Mootools:我想在mootools中遍历以下数组

发布于 2024-10-09 09:42:11 字数 235 浏览 8 评论 0原文

我正在学习motools。我有一个以下格式的数组。 我想在for循环中遍历它,但不知道该怎么做。

{'apple' : { 'prize' : 10 , 'color' : 'Red' } ,
'banana' : { 'color' : 'red', 'prize' : 20, 'quantity' : 12 } }

我从另一个模块获取了上面的数组结构,这就是为什么我无法更改其结构。

I am learning mootools. I have an array in following format.
I want to traverse it in for loop but dont know how to do it.

{'apple' : { 'prize' : 10 , 'color' : 'Red' } ,
'banana' : { 'color' : 'red', 'prize' : 20, 'quantity' : 12 } }

I am getting above structure of array from another module thats why i cant change its structure.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

就像说晚安 2024-10-16 09:42:11

MooTools 也有此功能,因此您不需要自己使用 hasOwnProperty 检查:

Object.each({ 'prize' : 10 , 'color' : 'Red' }, function(value, key){
    // what you like to do.
});

请参阅文档:http://mootools.net/docs/core/Types/Object#Object:Object-each

了解之间的区别确实很重要一个数组和一个对象。上面的示例使用了对象字面量。

对于数组,您可以使用 Array:each。

[1, 2, 3, 4].each(function(value, key){
    // what you like to do.
});

文档: http://mootools.net/docs/core/Types/Array#Array :each

但正如另一个答案中提到的,您可以使用对象的 for (var key in obj){} 循环和 for (var i = 0, l = arr.length; i < i++){}在普通 JavaScript 中循环

MooTools has a function for this as well, so you don't need to use the hasOwnProperty check yourself:

Object.each({ 'prize' : 10 , 'color' : 'Red' }, function(value, key){
    // what you like to do.
});

See the documentation: http://mootools.net/docs/core/Types/Object#Object:Object-each

It is indeed important to know the difference between an array and object. The above example uses an Object literal.

For arrays you could use Array:each.

[1, 2, 3, 4].each(function(value, key){
    // what you like to do.
});

Docs: http://mootools.net/docs/core/Types/Array#Array:each

But as mentioned in the other answer, you could do this with for (var key in obj){} loops for objects, and for (var i = 0, l = arr.length; i < l; i++){}loops for arrays in plain JavaScript

独闯女儿国 2024-10-16 09:42:11

这些是对象,而不是数组。

示例: http://jsfiddle.net/AkVvY/

var obj = {'apple' : { 'prize' : 10 , 'color' : 'Red' } ,
'banana' : { 'color' : 'red', 'prize' : 20, 'quantity' : 12 } };

for( var name in obj ) {
    alert( name + ': ' + obj[name].color );
}

您不需要一个为此目的的图书馆。

如果您担心 Object.prototype 可能会添加内容,请执行以下操作:

示例: http://jsfiddle.net/AkVvY/1/

for( var name in obj ) {
    if( obj.hasOwnProperty( name ) ) {
        alert( name + ': ' + obj[name].color );
    }
}

Those are objects, not arrays.

Example: http://jsfiddle.net/AkVvY/

var obj = {'apple' : { 'prize' : 10 , 'color' : 'Red' } ,
'banana' : { 'color' : 'red', 'prize' : 20, 'quantity' : 12 } };

for( var name in obj ) {
    alert( name + ': ' + obj[name].color );
}

You don't need a library for this.

If you're concerned that there may be additions to Object.prototype, then do this:

Example: http://jsfiddle.net/AkVvY/1/

for( var name in obj ) {
    if( obj.hasOwnProperty( name ) ) {
        alert( name + ': ' + obj[name].color );
    }
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文