Есть object, нужено запушить его values в [], если key === 'name'.
Вот пример моего кода, который не работает.
const projects = responseJSON.response.projects;
const allNames = [];
for (let key in projects) {
Object.keys(projects).find(key => {
if (key === 'name') {
allNames.push(value)
}
});
}
Или так :
for (let [key, value] of Object.entries(projects)) {
if (key === 'name') {
allNames.push(value);
}
}
Надеюсь на вашу помощь, спасибо!
Вы усложняете. Объект на то и существует, чтобы обращаться по ключу. Используйте projects['name'] или projects.name
Но не помешает добавить проверку:
const key = 'name';
if(projects[key]){
allNames.push(projects[key]);
}
const projects = {
a: {name: 'a'},
b: {name: 'b'}
}
const values = Object.keys(projects).reduce((res, projectKey) =>
projectKey === 'a' ? [...res, projects[projectKey]] : res,
[]);
console.log(values);
const projects = {
a: {
name: 'a'
},
b: {
name: 'b'
}
}
const allNames = [];
for (let key in projects) {
if (key === 'a') {
allNames.push(projects[key])
}
}
console.log(allNames)
(typeof projects['name'] != 'undefined') && allNames.push(projects['name']);
Данный код подходит для случаев, когда projects['name'] == 0 или projects['name'] == false или projects['name'] == null
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости