Поддерживает ли JQuery коллекцию словарей (ключ, значение)? - PullRequest
53 голосов
/ 23 марта 2011

Поддерживает ли JQuery набор Dictionaries (ключ, значение)?

Я хотел бы установить следующие данные в структуре

[1, false]
[2, true]
[3, false]

с возможностью добавления, поиска,удалить и обновить.

Любая помощь!

Ответы [ 5 ]

105 голосов
/ 23 марта 2011

Нет, jQuery не делает, но Javascript делает.

Просто используйте объект:

var dict = {
  "1" : false,
  "2" : true,
  "3" : false
};

// lookup:
var second = dict["2"];
// update:
dict["2"] = false;
// add:
dict["4"] = true;
// delete:
delete dict["2"];
5 голосов
/ 23 марта 2011

jQuery, нет.Но JavaScript делает.В JavaScript есть только две структуры: массивы и объекты .

Объекты могут использоваться в качестве словаря, гдесвойства являются «ключами»:

var dict = {
    1: true,
    2: true,
    3: false
};

К свойствам объектов можно обращаться либо с помощью точечной нотации, obj.property (если имя свойства является допустимым идентификатором, а цифра, как указано выше, не является)или с обозначением доступа к массиву, obj['property'].

3 голосов
/ 23 марта 2011

С чистым JavaScript,

var myDictionary = new Object();
myDictionary[1] = false;
myDictionary[2] = true;
myDictionary[3] = false;

function look(i) { return myDictionary[i];}
look(1); // will return false
2 голосов
/ 23 марта 2011

Вам не нужны отдельные словарные классы, так как объекты Javascript действуют как словари.Смотрите это:

var userObject = {}; // equivalent to new Object()
userObject["lastLoginTime"] = new Date();
alert(userObject["lastLoginTime"]);

Полная статья здесь: http://msdn.microsoft.com/en-us/magazine/cc163419.aspx

2 голосов
/ 23 марта 2011

Да, вы можете использовать объект для этого:

var myDict = { 1:false , 2:true , 3:false };
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...