a = [b, b = a][0]; 理解不了

 var a = 10,
       b = 20;
 a = [b, b = a][0];

困扰点:请老师从如下几个点帮我分析下。

  1. 数组里用变量赋值机制问题。引用,值拷贝
  2. 数组里头一次见到可以 b =a 这样的用法

这个没什么好奇怪的 就是把a的值赋给b 然后再把b插入数组里面 这种还有很多
比如if 里面

 if(!a  =  b-c) 

就是把b-c的值赋给a 然后再去看a是真假

  var a = 10,
   b = 20;
  a = [b, b = a][0];

刚开始都这样 时间长了你就见怪不怪了 我刚开始学编程的时候 一个for循环两周了都没整明白