1 自动转换

算术

  1. var a="10";
  2. var b=1;
  3. var c=true;
  4. console.log(a+b-c);//100
  5. console.log(a-b+c);//10
  6. console.log(a+c-b);//NaN

比较

  • ,<,== 返回的是boolean

  • 先将两边的值转为number,再比较
  • NaN和任何值作比较,结果都为NaN ``` var a=true; var b=”10”; var c=”hello”; console.log(a>b); 1>10 //false console.log(a>c); 1>NaN //false

var a; console.log(a) // undefined console.log(Boolean(a)) //false console.log(Boolean(null)) // false

  1. <a name="o0AsX"></a>
  2. ### 1-1 减法运算符(-)
  3. ```javascript
  4. // 在算术计算中先将数据转换为number,再计算
  5. var a = true;
  6. var b = "13";
  7. var c = b-a;
  8. /* var c = Number(b)-Number(a) */
  9. console.log(c) // 输出12
  10. "1"-9+"true"-parseInt(12.34) // NaN
  11. "9"-8+"false" // 1false
  12. "9"-8-"false" // NaN

1-2 加法运算符(+)

+ 运算符 特殊:遇到**字符串变为 拼接符 **输出字符串

  1. // + 运算符 特殊:遇到字符串变为 拼接符
  2. var a = "10";
  3. var b = 1;
  4. var c = true;
  5. console.log(a+b-c) // 101-1= 100
  6. console.log(a+b+c) // 101true
  7. console.log(a-b+c) // 10
  8. console.log(a+c-b) // NaN
  9. // NaN和任何数值去计算,结果都是NaN
  10. "true1"-1 // NaN

2. 强制转换

2-1 string boolean—>number

Number(“ “) Number(“”) Number(null) => 输出 0
2-1-1 **string—>number
**

  1. var str="10";
  2. console.log(str);//10
  3. var s="hello world"
  4. console.log(s);//NaN

2-1-2 boolean—>number

  1. true --> 1
  2. false -->0

2-2 number string—>boolean

**undefined,"",NaN,0,null --> false**
2-2-1 **number—>boolean
0:false 非0:true**

  1. var a=3;
  2. var b=0;
  3. console.log(Boolean(a));//true
  4. console.log(Boolean(b));//false

2-2-2 string—>boolean
空字符串””为:false 其余都为:true

  1. var str="hello world";
  2. var s="";
  3. console.log(Boolean(str));//true
  4. console.log(Boolean(s));//false
  5. ""-->false

2-3 float 任意型==>number (parseInt() parseFloat() )

  1. var str="12.121212px";
  2. console.log(parseInt(str)); //12
  3. console.log(parseFloat(str)); //12.121212

2-4 任意型==>string

  1. var a = true
  2. var str = true+""
  3. console.log(typeof str)
  4. console.log(typeof String(a))
  5. console.log(typeof a.toString())