JS算术运算符

除了字符串外,当对非Number类型的值进行运算时,会将这些值先转换为Number,然后再运算

	var a = 1;
    result = a + 1;
    result = 456+789;
    result = true + true;
    result = true + 1;
    result = 2 + null;

任何值和NaN做运算都得NaN

result = 2+ NaN;//NaN

多个字符串相加,直接拼串成一个字符串

result = "123" + "345";//123456

任何值和字符串做加法运算,都会先转换为字符串,做拼串操作
可以利用这一特点,来将任意的数据类型转换为String,只需要在任意的数据类型后+一个""。这是一种隐式的类型转换,由浏览器自动完成,实际上也是调用toString()。

	result = 2 +"hello";
    result = 2 + "12";
    result = true + "1";
    // 注意运算顺序
    result = 1+2+"3";//33
    result = "1"+2+3;//123
    console.log(result);

        var c = 11;
        c = c + "";
        console.log(c);
        console.log(typeof c);

除了字符串中的加法外,其余运算都是将非Number转化为Number运算
可以利用这一特点,做隐式转换
可以为一个值 -0 *1 /1 来将其转换为Number

 	r = 100 - "1";
   r = 100 * false;
   r = 100 / "3";
   r = 100 % 3;
   r = 100 * undefined;
   r = 100 - null;
   r = 100 *1;

   console.log(r);

你可能感兴趣的:(js)