string,boolean —>number Number(value)

string —> number

  1. // string --> number 只能识别纯数字的字符串
  2. var str = "10";
  3. var s = "hello world"
  4. var z = "2121sgd"
  5. var num = Number(str)
  6. console.log(num)//10
  7. console.log(Number(s)) //NaN 不是一个数字
  8. console.log(Number(z)) //NaN

boolean —> number

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

number,string —>boolean Boolean(value)

**undefined,"",NaN,0 --> false**

3-2-1 number —> boolean

特点: 0:false 非0: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

3-2-2 string —> boolean

特点:空字符串””为:false 其余都为:true

  1. var str = "hello world"
  2. var str1 = " "
  3. var str2 =""
  4. console.log(Boolean(str)) // true
  5. console.log(Boolean(str1)) // true
  6. console.log(Boolean(str2)) // false

任意类型转为number parseInt() parseFloat()

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

任意类型转为string String() toString()

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