如何使简单的PHP的foreach相当于Javascript?
可能重复:
在JavaScript中循环访问数组
我想在JavaScript中做相当于PHP的foreach。 因为我不太了解Javascript语言,所以我希望有人把这段PHP代码改写成Javascript代码片段:
$my_array = array(2 => 'Mike', 4 => 'Peter', 7 => 'Sam', 10 => 'Michael');
foreach($my_array as $id => $name)
{
echo $id . ' = ' . $name;
}
这甚至有可能在JavaScript语言中做?
最接近的构造是
a = { 2: 'Mike', 4: 'Peter', 7: 'Sam', 10: 'Michael' };
for(var n in a) {
console.log(n+'='+a[n]);
}
在JQuery中, $.each
函数类似。
它允许你使用回调函数迭代数组,在这个函数中你可以访问每个项目:
var arr = [ "one", "two", "three", "four", "five" ];
$.each(arr, function(index, value) {
// work with value
});
普通的JavaScript?
for (var key in obj) {
alert(key + ': ' + obj[key]);
}
看到下面的网址
foreach相当于在jQuery中的PHP?
或者尝试一下
如果你想迭代一个对象,我会推荐JavaScript变体:
for (var key in obj) {
alert(key + ': ' + obj[key]);
}
你也可以像这样在jQuery中迭代对象:注意! 除非您认为此语法维护起来更简单,否则这样做毫无意义。 下面的语法比上面的标准JavaScript,for-loop有更多的开销。
$.each(obj, function (key, value) {
alert(key + ': ' + value);
});
要迭代数组,这是你在标准JavaScript中的做法(假设arr是数组):
for (var i = 0, l = arr.length; i < l; i++) {
alert(i + ': ' + arr[i]);
}
要做到这一点在jQuery中,你可以这样做:
$.each(arr, function (index, value) {
alert(index + ': ' + value);
});
链接地址: http://www.djcxy.com/p/24525.html
上一篇: How to make simple php's foreach equivalent in Javascript?