var foo = "11"+2+"1"; console.log(foo); //1121 好多文章答案写错了,我发下给初学的朋友看到,以免一开始就学错了

体会加一个字符串'1' 和 减去一个字符串'1'的不同

1 var foo = "11"+2-"1";
2 console.log(foo); //111
3 console.log(typeof foo); //number

上述代码中的"11"+2结果是112,type是string,但是-“1”,使得foo转化成数字类型进行运算了。

1 var foo = "11"+2+"1"; 
2 console.log(foo); //1121
3 console.log(typeof foo); //string

而+“1”只是单纯字符串拼接。

建议大家还是自己用程序跑一下看看,浏览器中(Chrome, IE, Firefox) 使用 F12 来启用调试模式, 在调试窗口中点击 "Console" 菜单。

原文地址:https://www.cnblogs.com/realcare/p/6024878.html