Как превратить строку в объект?
мне нужно преобразовать строку
width:100px; height:100px; background:red; transform-origin: 100% 0%; transform: translate(100px, 100px) scale(1, 0.5) skew(30deg, 20deg) rotate(1deg);"
В объект
var arr = {
'width': '100px',
'height': '100px',
'background': 'red',
'transform-origin' : ['100%' , '0%']
'transform': {
'translate': ['100px', '100px'],
'scale': [ '1', '0.5'],
'skew': ['30deg', '20deg'],
'rotate': '1deg'
}
};
Я плохо разбираюсь в регулярных выражениях. Поэтому кто нибудь может мне помочь с этим ?
Ответы (1 шт):
Автор решения: Alex P
→ Ссылка
Может есть возможность поменять формат исходной строки? Вам подошла бы команда JSON.parse(), но строка должна быть формата
{"width":"100px","height":"100px","background":"red","transform-origin":["100%","0%"],"transform":{"translate":["100px","100px"],"scale":["1","0.5"],"skew":["30deg","20deg"],"rotate":"1deg"}}
Если взять ваш объект:
let arr = {
'width': '100px',
'height': '100px',
'background': 'red',
'transform-origin' : ['100%' , '0%'],
'transform': {
'translate': ['100px', '100px'],
'scale': [ '1', '0.5'],
'skew': ['30deg', '20deg'],
'rotate': '1deg'
}
};
то в такую строку его можно преобразовать командой
let arr_string = JSON.stringify(arr)
То есть JSON.stringify() и JSON.parse() команды обратные друг другу.
arr = JSON.parse(arr_string )