这是其中一个我不知道如何正确说出来的问题,所以如果之前有人问过我会道歉。
Python提供了一些非常简单的语句,用于快速将数组分配给值。例如,如果我有一个像box=[0,0,100,100]
这样的数组的框,我可以像x1,y1,x2,y2=box
那样分配这些点。在javascript中有这样的声明吗?这在类函数中尤其有用,其中var x1,y1,x2,y2=this.box
比
var x1=this.box[0];
var y1=this.box[1];
var x2=this.box[2];
var y2=this.box[3];
如果是这样,那么是否有任何javascript方法将其应用于for循环?来自python,下面看起来很直观
盒= [[0,0,100,100],[0,0,100,100],[0,0,100,100],[0,0,100,100]]
for box in boxes:
x1,x2,x3,x4 = box
#do something
绝对比
更直观var boxes=[[0,0,100,100],[0,0,100,100],[0,0,100,100],[0,0,100,100]];
for (var i = 0; i < boxes.length : i++){
var box = boxes[i];
var x1 = box[0];
var y1 = box[1];
var x2 = box[2];
var y2 = box[3];
答案 0 :(得分:3)
跨浏览器是不可能的,抱歉。 Firefox实现了一种新语法,但目前还没有其他浏览器:
var [x, y] = [1, 2];
答案 1 :(得分:1)
我相信这是不行的..或者,你可以生成你的列表
var boxes = [
{'x1':0, 'y1':0, 'x2':100, 'y2':100},
{'x1':0, 'y1':0, 'x2':100, 'y2':100},
{'x1':0, 'y1':0, 'x2':100, 'y2':100},
]
然后您可以使用
访问它们for (i in boxes) {
var box = boxes[i]
// use box.x1 box.y1 box.x2 box.y2
//such as:
console.log(box.x1);
}