Javascript。数组初始化顺序的元素
有一天,我看到了交换数组中元素的某种方法。像这样:Javascript。数组初始化顺序的元素,javascript,arrays,specifications,Javascript,Arrays,Specifications,有一天,我看到了交换数组中元素的某种方法。像这样: var-arr=[1,2,3]; arr[0]=[arr[1],arr[1]=arr[0]][0]; 显然,此方法假定临时数组的第一个值arr[1]将在第二个arr[1]=arr[0]之前计算出来 否则,两个值将相同。合成示例: var x=1; var arr=[x,x+=1,x+=1]; arr;//[1,2,3]或[3,3,2]或可能[3,2,3]? 是否保证javascript解释器不会以这种方式工作?JS数组初始值设定项保证从左到
var-arr=[1,2,3];
arr[0]=[arr[1],arr[1]=arr[0]][0];
显然,此方法假定临时数组的第一个值arr[1]
将在第二个arr[1]=arr[0]
之前计算出来否则,两个值将相同。合成示例:
var x=1;
var arr=[x,x+=1,x+=1];
arr;//[1,2,3]或[3,3,2]或可能[3,2,3]?
是否保证javascript解释器不会以这种方式工作?JS数组初始值设定项保证从左到右进行计算 数组累积(ElementList:ElementList,省略[opt]赋值表达式): .1。让postIndex成为使用参数array和nextIndex对ElementList执行ArrayAccumulation的结果 .4。让initResult作为赋值表达式的求值结果 @ 不过最好不要依赖它。“不过最好不要依赖它。”-嗯?你完全可以信赖它。