当我们有a、b两个值,想要交换,通常是要声明第三个变量,但是我最近看到这样一种不用声明第三个变量的处理方法:
1 var a=1,b=2; 2 a=[b,b=a][0];
其实还是在内存中开出了一个新的空间(数组),只是语句上变化了一些,一个匿名的数组充当了原本的那个第三个变量。
当我们有a、b两个值,想要交换,通常是要声明第三个变量,但是我最近看到这样一种不用声明第三个变量的处理方法:
1 var a=1,b=2; 2 a=[b,b=a][0];
其实还是在内存中开出了一个新的空间(数组),只是语句上变化了一些,一个匿名的数组充当了原本的那个第三个变量。