一、强制转换

number/string/boolean

2.1.1、 string—>number

  1. 1.1 string-->number 特点:只能识别纯数字的字符串
  2. Number(value)
  1. var a = "10";
  2. var str = "hello";
  3. console.log(Number(a)); //10
  4. console.log(Number(str)); //NAN 不是一个数字

2.1.2、 boolean—>number

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

2.1.3、 number—>boolean

  1. 特殊:0-->false,其他的情况都为true
  1. var a = 0;
  2. var b = -1;
  3. var c = 20;
  4. console.log(Boolean(a)); // false
  5. console.log(Boolean(b)); // true
  6. console.log(Boolean(c)); // true

2.1.4、 string—>boolean

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

二、自动转换

将数据转换为number,再进行计算(比较)
特殊:+运算中,只要有一边为字符串,那么结果一定字符串。+号起拼接符作用

2.1.5、-

// var c= Number(b)-Number(a); //13 - 1

  1. var a = ture;
  2. var b = "13";
  3. var c = b-a;
  4. console.log(c);

/2.1.6、+

  1. var a = true;
  2. var b = "10";
  3. var c = b+a;
  4. console.log(c) // 10true
  5. var d = "10";
  6. var f = 1;
  7. console.log(d+f); //101