27岁,山西运城人,职业电商经理人,前端开发工作者,从事过网站建设、网络推广、SEO、SEM、信息流推广、二类电商、网络运维、软件开发,等相关电商工作,经验较为丰富,小米技术社区致力于为广大从事Web前端开发的人员提供一些力所能及的引导和帮助 ...[更多]
E-mail:mzze@163.com
Q Q:32362389
W X:xiaomi168527
27岁,山西运城人,职业电商经理人,网络工程师兼运维,从事过运营商网络建设,企业网络建设、优化。数据中心网络维护等通过,经验丰富,座右铭:当自己休息的时候,别忘了别人还在奔跑。 ...[更多]
大于花一样的年龄,河南郑州是我家,2010年在北京接触团购网,2011年进入天猫淘宝一待就是四年,如今已经将设计走向国际化(ps:误打误撞开始进入阿里巴巴国际站的设计,嘿嘿)五年电商设计,丰富经验,从事过天猫淘宝阿里各项设计,店铺运营,产品拍摄;我将我的经历与您分享是我的快乐!座右铭:越努力越幸运! ...[更多]
E-mail:97157726@qq.com
Q Q:97157726
JavaScript交换变量的值
问题:
var a = 1, b = 2;
如果交换变量的值?
var c = a; // c = 1 a = b; // a = 2 b = c; // b = 1
var a = 1, b = 2; a = a + b; // a = 3 b = 2 b = a - b; // a = 3; b = 1 a = a - b; // a = 2; b = 1
var a = 1, b = 2; [a,b=a] // [1, 1] b=1 [a,a=b] // [1, 2] a=2 定义数组时同时给其中一个变量进行赋值 a=b; 定义数组后再通过数组给另外一个变量赋值 b = [a, a=b][0]; // 最终一行代码解决 [1, 2][1] a=2 b=[1,2][0] = 1
数组法易错的地方
var a = 1, b = 2; [1 , 2] a = [a, b][1]; // [1, 2][1] a=2 b = [a, b][0]; // [2, 2][0] b=2 //都是2,此种方法是错误的
var a = 1, b = 2;
//定义对象时同时给其中一个变量进行赋值 a=b; 定义对象后再通过对象的属性给另外一个变量赋值 b = {"attr1":a, "attr2":a=b}.attr1; b = {"attr1":a, "attr2":a=b}['attr1'];
要注意,对象写法不要像以下这么写
b = {a:a, b:a=b}.a; // 难以阅读的形式 对象的属性名,可以不加引号,但还是普通字符串,不是变量