2016-11-04 73 views
5
var points = [{ x: 75, y: 25},{ x: 75+0.0046, y: 25}]; 

我將如何遍歷這個。 我想先打印x和y值,然後打印第二個和第二個...如何迭代JavaScript中的數組和對象

+0

可能重複:http://stackoverflow.com/questions/16626735/how-to-loop-through-an-array-containing-objects-and-access-their-properties – Rajesh

回答

5

使用Array#forEach數組迭代的方法。

var points = [{ 
 
    x: 75, 
 
    y: 25 
 
}, { 
 
    x: 75 + 0.0046, 
 
    y: 25 
 
}]; 
 

 
points.forEach(function(obj) { 
 
    console.log(obj.x, obj.y); 
 
})

+0

如果我想將數據存儲在某些var中,而不是.var X = obj.x; \t \t var Y = obj.y;這可以做或不做,因爲新的js; –

+0

@gauravsingh這將只給你最後一個值,因爲你正在循環中賦值。請解釋你正在努力達到的目標,然後我們會幫助你更容易。此外,下次請參考您在提問時得到的建議 – Rajesh

2

var points = [{ x: 75, y: 25},{ x: 75+0.0046, y: 25}]; 
 

 
//ES5 
 
points.forEach(function(point){ console.log("x: " + point.x + " y: " + point.y) }) 
 

 

 
//ES6 
 
points.forEach(point=> console.log("x: " + point.x + " y: " + point.y))

+1

這是一個已經回答了幾次的非常基本的問題。您應該將其標記爲重複 – Rajesh

2

可以使用for..of循環。

var points = [{ x: 75, y: 25},{ x: 75+0.0046, y: 25}]; 
 
for (let point of points) { 
 
    console.log(point.x, point.y); 
 
}

+1

我比搜索重複項更快地鍵入答案,並將其標記爲原樣。 –

+0

我必須說,你有一些打字速度,但它更好地保持**我們的門戶**乾淨。另外請記住,舊帖子有更多答案覆蓋更多選項,因此如果您標記爲重複,那麼搜索它的人將幫助他學習更多 – Rajesh