我对 PHP 比对 JQuery 更熟悉,并且有点陷入数组。我已阅读了论坛上有关此主题的所有帖子,但无法使其发挥作用。
我有一个我认为是数组的东西。 在 php 中看起来像这样的东西
myArr = ['option-4' => '3','option-1' => '8', 'option-3' => '0' ];
在 JQuery 中,我可以使用命令检索值
var x = myArr['option-1'];
这一切都很好,但我需要做的是创建一个值的字符串。所以我需要循环遍历元素并将元素的值添加到字符串中。问题在于循环。
当我检查数组的长度时
alert("Elements in array "+myArr.length);
它总是返回零。
当我尝试类似的事情时
$.each(myArr , function(i, val) {
alert(myArr[i]);
});
没有显示任何内容。
我显然错过了一些东西,我的 PHP 知识一定会阻碍一些东西。 有人可以帮忙吗?
最佳答案
这不是一个有效的 JavaScript 数组。您想使用一个对象:
var myArr = {'option-4': '3', 'option-1': '8', 'option-3': '0' };
然后您可以使用 for .. in 迭代所有键:
for (var key in myArr) {
alert(myArr[key]);
}
这相当于 PHP 中的关联数组。请注意,您需要使用显式键来访问元素,不能使用索引,例如 myArr[0]
。
关于javascript - 使用each() 数组显示零长度且没有值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16283201/