Подскажите пожалуйста , как решить подобную задачку ? ( была на собеседовании ) Не пойму, что делает последний аргумент ? Попытался получить конечный ключ, но промежуточный не могу, что бы их поэтапно сравнить со строковым значением
upd. задачка решена, спасибо всем , кто откликнулся !
const obj = {
a: {
b: {
c: 'c',
},
},
d: 'd',
};
const get = (obj, str, def = null) => {
};
console.log(get(obj, 'a.b.c')); // 'c'
console.log(get(obj, 'a.c', 0)); // 0
console.log(get(obj, 'a.e')); // null
const obj = {
a: {
b: {
c: 'c',
},
},
d: 'd',
};
const get = (obj, str, def = null) => {
// начало моего кода
let arrFromStr = str.split('.');
const result = [];
for (let prop in obj) {
const value = obj[prop];
if (typeof value === 'object') {
result.push(get(value));
} else {
result.push(value);
}
}
return result;
};
console.log(get(obj, 'a.b.c')); // 'c'
console.log(get(obj, 'a.c', 0)); // 0
console.log(get(obj, 'a.e')); // null
result.push(get(value)); // сколько параметров должно быть у функции get?
const obj = {
a: {
b: {
c: 'c',
},
},
d: 'd',
};
const get = (obj, str, def = null) => {
let arrFromStr = str.split('.');
for (let i = 0; i < arrFromStr.length; i++) {
obj = obj[arrFromStr[i]];
if (obj === undefined || obj === null)
return def;
}
return obj;
};
console.log(get(obj, 'a.b.c')); // 'c'
console.log(get(obj, 'a.c', 0)); // 0
console.log(get(obj, 'a.e')); // null
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Объясните , если можно, по простому что такое микро- и макрозадачи, а то мало информации на эту темуСпасибо!
Тестируя код в фаерфоксе 820