Javascript快速变量赋值
这是我不知道如何恰当表达的问题之一,所以如果以前有人问过,我会道歉 Python提供了一些非常简单的语句,用于快速将数组分配给值。例如,如果我有一个长方体作为数组,如soJavascript快速变量赋值,javascript,arrays,variables,variable-assignment,Javascript,Arrays,Variables,Variable Assignment,这是我不知道如何恰当表达的问题之一,所以如果以前有人问过,我会道歉 Python提供了一些非常简单的语句,用于快速将数组分配给值。例如,如果我有一个长方体作为数组,如sobox=[0,0100100]我可以分配这些点,如sox1,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
box=[0,0100100]
我可以分配这些点,如sox1,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,0100100]、[0,0100100]、[0,0100100]、[0,0100100]]
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];
var框=[[0,0100100]、[0,0100100]、[0,0100100]、[0,0100100];
对于(变量i=0;i
我认为这是不可能的。或者,您也可以将您的列表生成为
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);
}
跨浏览器这是不可能的,抱歉。Firefox实现了一种新的语法,但目前没有其他浏览器实现:
var [x, y] = [1, 2];
PHP(
list
)和Perl也有它。Javascript没有。仅供参考,在js 1.7()@亚历克斯:谢谢。在我看来,它不像Python那么干净,但它确实是helps@Alex,另一个例子是默认值。我真的可以在函数参数中使用默认值。这是新的javascript语法,据我所知是1.7。遗憾的是,支持不可用。如此微不足道,这是我认为JS没有取得好成绩的情况之一设计决策请注意,很多人对coffeescript:赞不绝口,它可以编译成JS。它支持上述语法。