一、强制转换
number/string/boolean
2.1.1、 string—>number
1.1 string-->number 特点:只能识别纯数字的字符串
Number(value)
var a = "10";
var str = "hello";
console.log(Number(a)); //10
console.log(Number(str)); //NAN 不是一个数字
2.1.2、 boolean—>number
var b =true; // 1
var f = false; // 0
console.log(Number(b));
console.log(Number(f));
2.1.3、 number—>boolean
特殊:0-->false,其他的情况都为true
var a = 0;
var b = -1;
var c = 20;
console.log(Boolean(a)); // false
console.log(Boolean(b)); // true
console.log(Boolean(c)); // true
2.1.4、 string—>boolean
特殊:""-->false
var str = "hello world";
var s = " ";
var t = "";
console.log(Boolean(str)); //true
console.log(Boolean(s)); //true
console.log(Boolean(t)); //false
二、自动转换
将数据转换为number,再进行计算(比较)
特殊:+运算中,只要有一边为字符串,那么结果一定字符串。+号起拼接符作用
2.1.5、-
// var c= Number(b)-Number(a); //13 - 1
var a = ture;
var b = "13";
var c = b-a;
console.log(c);
/2.1.6、+
var a = true;
var b = "10";
var c = b+a;
console.log(c) // 10true
var d = "10";
var f = 1;
console.log(d+f); //101