如果要做交换两个变量的值,有不想使用中间量。我采用了处理函数arguments属性的方法
function exchange(a,b){ var args=arguments; args=[].slice.call(args).reverse(); a=args[0],b=args[1]; console.log(a+' '+b);//10,1 }; exchange(1,10);
如果是firefox这样支持ECMA6语法的浏览器还可以变的更短,使用结构赋值可以大大减少代码量;
function exchange(a,b){ [a,b]=[].slice.call(arguments).reverse(); console.log(a+' '+b); //11,1 }; exchange(1,11);
这样很快就可以解决问题了
关于结构赋值 传送门