let a = 100;
let b = "100";
console.log(b- a); //0
console.log(typeof (b- a)); //number
console.log(a*b);//10000
console.log(typeof(a*b));//number
console.log(a + b - a); //100000
console.log(b*b);//10000
console.log(typeof(b*b));//number
console.log(b/b);//1
console.log(typeof(b/b));//number
console.log(typeof (a + b - a));//number
console.log(a + b);//100100
console.log(typeof (a + b));//string
console.log(a + b - b - b);//99900
console.log(typeof (a + b - b - b));//number
由以上结论可得,只有在两个值相加时才优先判断为string类型,减乘除都会变成number