在javascript中访问对象数组中的所有值
我试图访问对象数组中的所有值。 我的数据结构如下:在javascript中访问对象数组中的所有值,javascript,Javascript,我试图访问对象数组中的所有值。 我的数据结构如下: var data = [ obj{ x: 1, y: 2 }, obj{ x:3, y:9 } ] 我想一次得到每个x的值 我尝试使用for循环,然后将值分配给全局变量,如下所示: var var startValue; var startYValue; var startXValue; var endYValue; var endXValue; var endValue; for (var i
var data = [
obj{
x: 1,
y: 2
},
obj{
x:3,
y:9
}
]
我想一次得到每个x的值
我尝试使用for循环,然后将值分配给全局变量,如下所示:
var var startValue;
var startYValue;
var startXValue;
var endYValue;
var endXValue;
var endValue;
for (var i = 0; i < data.length; i++) {
endYValue = data[i].endY;
endXValue = data[i].endX;
endValue = { x:endYValue, y:endXValue }
startYValue = data[i].startY;
startXValue = data[i].startX;
startValue = { x:data[i].startY, y:data[i].startX }
console.log(endValue.x)
}
console.log(endValue.x)
var起始值;
var起始值;
var起始值;
var endYValue;
var endXValue;
var终值;
对于(变量i=0;i
我发现第一个console.log(endValue.x)起作用了,但是当我全局查看console.log(endValue.x)时,它只显示最后一个x值,而不是所有的x值
任何帮助都将不胜感激 您的数据数组应该只是每个项目的对象,然后我们可以循环并将每个道具分配给另一个数组:
var data = [{x:1, y:2}, {x:3,y:9}];
var arr = [];
// get values of every x at once.
for (var i=0; i<data.length; i++) arr.push(data[i].x);
console.log(arr); // [1, 3]
var data=[{x:1,y:2},{x:3,y:9}];
var-arr=[];
//一次获取每个x的值。
对于(var i=0;i而言,
运算符中存在循环的:
var data = [{x:10, y: 20}, {x: 30, y: 40}];
for (var i in data) {
var obj = data[i];
if (!obj)
continue;
console.log(obj.x);
console.log(obj.y);
}
要访问第一个对象:vas startValue=data[0];
要访问最后一个对象:vas startValue=data[data.length-1];
要循环遍历数组并查找最小/最大x/y值,请执行以下操作:
var upperLeft = {x: data[0].x, y: data[0].y};
var bottomRight = {x: data[0].x, y: data[0].y};
for (var i in data) {
var obj = data[i];
if (!obj)
continue;
if (obj.x < upperLeft.x)
upperLeft.x = obj.x;
if (obj.y < upperLeft.y)
upperLeft.y = obj.y;
if (obj.x > bottomRight.x)
bottomRight.x = obj.x;
if (obj.y > bottomRight.y)
bottomRight.y = obj.y;
}
console.log(JSON.stringify(upperLeft));
console.log(JSON.stringify(bottomRight));
var upperLeft={x:data[0].x,y:data[0].y};
var bottomRight={x:data[0].x,y:data[0].y};
用于(数据中的var i){
var obj=数据[i];
如果(!obj)
继续;
如果(对象x<左上角x)
左上角x=对象x;
如果(对象y<左上角y)
左上角y=对象y;
如果(对象x>右下角x)
右下角.x=obj.x;
如果(对象y>右下角y)
右下角y=对象y;
}
log(JSON.stringify(左上));
log(JSON.stringify(右下角));
请参见此处的答案: