我正在研究一个简单的小javascript编码挑战,但遇到了一些我在任何地方都找不到的奇怪行为.也许有人可以指出我说这是预期的行为?
myIntegerArray = [1,2,3,4];
b = new Array();
for(var v in a)
{
b.push(v);
}
console.log(b); // returns ["1","2","3","4"]. Note String result
Run Code Online (Sandbox Code Playgroud)
如果我要使用,forEach()但我得到一个数组回来:
a.forEach(function(element,index,ay)
{
b.push(element)
});
//a console.log(b) will return [1,2,3,4]
Run Code Online (Sandbox Code Playgroud)
你正在推动关键名称,而不是价值.你需要这样做:
b.push(a[v]);
Run Code Online (Sandbox Code Playgroud)
这可能有助于您理解:
for (var key in obj) {
var value = obj[key];
arr.push(value);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
717 次 |
| 最近记录: |