Есть обьект
const si = {
T: { s: 1000, t: “9” },
A: { s, t: “3” },
}
Что то не понимаю как загуглить и не получаеться вытащить обьект.
Мне нужно получить s из T как я могу это сделать ?)
Может и глупый вопрос но не могу разобраться
Есть обьект
const si = {
T: { s: 1000, t: “9” },
A: { s, t: “3” },
}
Что то не понимаю как загуглить и не получаеться вытащить обьект.
Мне нужно получить s из T как я могу это сделать ?)
Может и глупый вопрос но не могу разобраться
const si = {
T: { s: 1000, t: ‘9’ },
A: { s: null, t: ‘3’ }
}
console.log( si.T.s );
Хорошо, а если мне допустим надо создать цикл который будет перебирать обьект и вытягивать с него дочерние обьекты ?
Для этого есть, например, for in, Object.entries и прочие.
Так здесь же вытаскивают с обьекта и в нём елемент. Мне нужно вытащить так с обьекта в котором обьект и ещё елементы
Возможно имеется в виду рекурсивный проход по объекту вглубь до самых глубоко вложенных объектов. В общем виде подход выглядит так:
const obj = {
a: 10,
b: 20,
c: {
a:99,
b:88,
c: {
a: 1,
b: 2,
c: 3
}
}
}
function isObject(obj) {
return typeof obj === 'object' && obj != null
}
function processObj(obj, handler) {
for (let i in obj) {
if (isObject(obj[i])) {
processObj(obj[i], handler)
} else {
handler(i, obj[i], obj)
}
}
}
processObj(obj, (key, val, parent) => {
console.log('key', key)
console.log('val', val)
console.log('parent', parent)
})
processObj
на вход получает сложный вложенный объект и функцию-обработчик. Обработчик будет вызываться для всех “листьев” (в терминологии деревьев как структур данных). В обработчик при вызове будут передаваться ключ листа объекта, значение в ключе и родительский объект листа.