Javascript: Используйте объект для поиска данных
-
Объясните, каким образом, после создания объекта lookup :
var lookup ={
"alpha":"Adams",
"bravo":"Boston",
"charlie":"Chicago",
"delta":"Denver",
"echo":"Easy",
"foxtrot":"Frank"
};
использовать ее для поиска значения переменной val? Я не понимаю каким образом можно сделать выборку без switch.
-
@Orange есть же пример в задании:
var alpha = { 1:"Z", 2:"Y", 3:"X", 4:"W", ... 24:"C", 25:"B", 26:"A" }; alpha[2]; // "Y" alpha[24]; // "C" var value = 2; alpha[value]; // "Y"
Особенно интересен последний вариант, где подставляется переменная value в качестве ключа для поиска значения.
-
@admin Спасибо, разобрался
-
Если честно,я до сих пор не понял как использовать lookup и val(((дайте пожалуйста еще подсказку)
-
@zmeyuga смысл в том, чтобы получить доступ к свойству объекта мы указываем значение ключа, а в случае массов - индекс, по которому расположен элемент. Можно указать индекс/ключ непосредственно в скобках, например
alpha[2]
, но далеко не всегда мы сразу знаем индекс/ключ в процессе вычислений, поэтому можно в качестве индекса/ключа указать переменнуюalpha[value]
, которая содержит индекс/ключ и это значение переменной будет использовано в качестве ключа/индекса. Например, чтобы вывести элементы массива через один, мы можем написать такой простой цикл:a = ['a','b','c','d','e']; for (var i=0; i< a.length; i += 2) { console.log( a[i] ) }
В результате будут выведены только буквы 'a', 'c', 'e'.
-
Спасибо.Разобрался.Сам себя запутал(
-
// Инициализация
function phoneticLookup(val) {
var result = "";// Измените код только под комментарием.
var lookup = {
"alpha": "Adams",
"bravo": "Boston",
"charlie": "Chicago",
"delta": "Denver",
"echo": "Easy",
"foxtrot": "Frank"
}
var val = "delta";
lookup[val];
// Измените код только над комментарием.
return result;
}// Измените значение аргумента для проверки
phoneticLookup("delta");Что тут не правильно?
-
Вот кстати нашел классный материал по объектам в js http://webdiz.com.ua/glava-5-obekty-v-javascript/obekty-peredacha-po-ssylke/