Хеш type
в mootools - это, по сути, прототипный клон объекта type
, который безопасно получает методы типа .each
, .some
и т. Д. - http://mootools.net/docs/more/Types/Hash
в конечном счете, вы работаете сjavascript, и вы можете обходить объекты в javascript с помощью выражения for var in object
epression:
var object = {
foo: "bar",
bar: "foo"
};
for (var key in object) {
alert(key);
alert(object[key]);
}
, на что следует обратить внимание: проверьте hasOwnProperty или установите __proto__: null
для объекта, чтобы избежать проблем, подобных этим:
Object.prototype.hello = "world";
var object = {
foo: "bar",
bar: "foo"
};
for (var key in object) {
alert(key); // foo, bar, hello
alert(object[key]);
}
вместо этого выполните:
var object = {
__proto__: null,
foo: "bar"
};
Это также может работать как new Object(null)
, если доступно.
И да, прототипирование объекта не является безопасной практикой - следовательно, mootools делалэто в хэш, а не фактический тип объекта.Хэш теперь устарел в пользу Object
- http://mootools.net/docs/core/Types/Object