@Rufix

Условие и циклы в ассоциативном массиве?

var goods = {
	"dd" : {
		"name": "Яблоки",
		"cost": 13
	},
	"dc" : {
		"name": "Груши",
		"cost": 23
	},
	"cd" : {
		"name": "Абрикосы",
		"cost": 33
	},
	"dee" : {
		"name": "Сливы",
		"cost": 43
	},
	"dd2" : {
		"name": "Вишни",
		"cost": 19
	},
};

for (var key in goods){
	if (goods.key.cost > 20){
		document.write(goods.key + '<br>');
	}
}

Подскажите пожалуйста, как правильно написать такую программу? На всякий случай поясню. Нужно вывести на страницу товары, цена которых больше 20.
  • Вопрос задан
  • 60 просмотров
Решения вопроса 3
@dimoff66
Кратко о себе: Я есть
Правильно написать ее без использования ассоциативного массива, а с обычным

var goods = [
  {
    "code": "dd",
    "name": "Яблоки",
    "cost": 13
  },
  {
    "code": "dc",
    "name": "Груши",
    "cost": 23
  }
];

document.write(goods.filter(good => good.cost > 20).map(good => good.name).join('<br>'));


Но если настаиваете на ассоциативном массиве, то

for (var key in goods){
  if (goods[key].cost > 20){
    document.write(goods[key].name + '<br>');
  }
}


PS Вообще это легко ищется поиском. Достаточно посмотреть любой пример работы с ассоциативным массивом в js, чтобы не создавать подобные темы.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через TM ID
Похожие вопросы
Digital Sharks Казань
от 60 000 до 65 000 руб.
CS Money Санкт-Петербург
от 120 000 до 150 000 руб.
Ingram Micro Cloud Москва
от 170 000 руб.
17 янв. 2019, в 18:06
5000 руб./за проект
17 янв. 2019, в 17:21
20000 руб./за проект