微信扫一扫打赏支持

范仁义js课程---12、js算术运算符

范仁义js课程---12、js算术运算符

一、总结

一句话总结:

js常见的算术运算符有+(加,和字符串做操作的时候为连接符)、-(减)、*(乘)、/(除)、%(取模,也就是取余数)

 

1、js中的+(加号)的常见作用是什么?

加号如果是操作非字符串类型,就是相加,如果是操作字符串类型,那就是连接字符串

 

2、js中的/和%符号的作用分别是什么?

/是除法,%是取余数

 

3、js的result = 1 + 2 + "3";式子中,result的结果是什么?

字符串"33":1+2的结果3和字符串"3"做拼接字符串操作

 

4、js的result = "1" + 2 + 3; 式子中,result的结果是什么?

字符串"123":字符串"1"和数字2做字符串拼接操作得到字符串"12",接着和数字3做字符串拼接操作得到字符串"123"

 

5、js中的NaN是什么?

NaN 是一个特殊的数字,表示Not A Number,使用typeof检查一个NaN也会返回number,我们使用两个字符串相乘可以得到NaN,比如'abc'*'bcd'

 

 

 

二、JavaScript算术运算符

博客对应课程的视频位置:12、js算术运算符
https://www.fanrenyi.com/video/19/93

 

 

转自或参考:JavaScript算术运算符
https://www.cnblogs.com/shihaiying/p/11884916.html

1、运算符(操作符)

⑴通过运算符可以对一个或多个值进行运算,并获取运算结果

⑵比如:typeof就是运算符,可以来获得一个值得类型

              它会将该值的类型以字符串的形式返回

              number,string,Boolean,undefined,object

⑶示例:

 

 

 

1、术运算符

当对非Number类型的值进行运算时,会将这些值转换为Number然后再运算

任何值和NaN做运算都得NaN

 

1.加号(+)运算符

⑴+可以对两个值进行加法运算,并将结果返回

 具体示例:纯数字相加

 

非数字类型

true 转换为 1;

false  转换为 0;

 

null转换为 0 ;

 

 数字和NaN做运算  得  NaN;

 

⑵如果对两个字符串进行加法运算,则会做拼串

  会将两个字符串拼接为一个字符串,并返回

  具体示例:拼串

 

 

⑶任何值和字符串做加法,都会先转换为字符串,然后再和字符串做拼串的操作。

   我们可以利用这一特点,来将一个任意的数据类型转换为String,

   我们只需要为任何的数据类型+ 一个 ""(空串),即可将其转换为String,

   这是一种隐式的类型转换,由浏览器自动完成,实际上它也是调用的string()函数;

 

具体示例:

数字和字符串做加法

布尔值与字符串做加法

 

隐式类型转换

 

 

常用的用法

 

 

⑷加法运算(顺序从左到右依次运算)

计算 1 + 2 + "3" = ?

 

计算 "1" + 2 + 3 = ?

 

 

2.减号(-)运算符

- 可以对两个值进行减法运算,并将结果返回

具体示例

 

3.乘号(*)运算符

* 可以对两个值进行乘法运算,并将结果返回

 

4.除号(÷)运算符

÷ 可以对两个值进行初法运算,并将结果返回

 

★任何值做 -  *  / 运算时都会自动转换为Number

我们可以利用这一特点做隐式的类型转换

可以通过一个值 -0  *1  /1 来将其转换为number

原理和number()函数一样,使用起来更加简单

 

5.取模(%)也叫取余运算符

% 可以对两个值进行取模运算,并将结果返回

 

 

三、课程代码

  1 <!DOCTYPE html>
  2 <html lang="en">
  3 <head>
  4     <meta charset="UTF-8">
  5     <title>js算术运算符</title>
  6 </head>
  7 <body>
  8 <script>
  9     /*
 10     * 算术运算符
 11     *
 12     * true一般在计算中都是转化为1
 13     * false一般在计算中都是转化为0
 14     *
 15     * 隐式类型转换
 16     *
 17     * 在算术运算中,其它类型的变量都会转化(隐式类型转换)为number类型的变量
 18     *
 19     * 算术式在运算的时候,是从左到右运算的
 20     *
 21     * 任何数字和NaN运算,都会得到NaN
 22     *
 23     * +(加):两个数相加
 24     * 在+号运算符中,是非String类型的变量 都会转化(隐式类型转换)为number类型的变量
 25     * 如果是String类型的变量,那么这个+号会变成连接号
 26     *
 27     * +:变成连接符(字符串里面)
 28     *
 29     *
 30     * -(减)
 31     * *(乘)
 32     * /(除)
 33     * %(取模)
 34     *
 35     * */
 36     // var num=23;
 37     // // var num2=17.8;
 38     // // var num2=false;
 39     // // var num2=Number(false);
 40     // var num2='123';
 41     // var ans=num+num2;
 42     // console.log(ans);
 43     // console.log(typeof ans);
 44     //
 45     // var result1=1+2+'3';
 46     // console.log('result1= '+result1);
 47     // var result2='1'+2+3;
 48     // console.log('result2= '+result2);
 49 
 50     /*
 51     * 减号
 52     * NaN:not a number
 53     * NaN也是number类型的
 54     *
 55     *
 56     *
 57     * */
 58     // var num1=23;
 59     // // var num2=15.6;
 60     // // var num2='12';
 61     // var num2='abc';
 62     // var ans=num1-num2;
 63     // console.log(ans);
 64     // console.log(typeof ans);
 65 
 66     /*
 67     * 乘号
 68     * */
 69     // var num1=23;
 70     // var num2='abc';
 71     // var ans=num1*num2;
 72     // console.log(ans);
 73     // console.log(typeof ans);
 74     //
 75     // console.log(Number('abc'));
 76     // console.log(typeof Number(num2));
 77 
 78     /*
 79     * 除号 /
 80     * */
 81     // var num1=23;
 82     // var num2='2';
 83     // var ans=num1/num2;
 84     // console.log(ans);
 85     // console.log(typeof ans);
 86 
 87     /*
 88     * 取模(取余数) %
 89     *
 90     * */
 91     var num1=9;
 92     var num2=5;
 93     var ans=num1%num2;
 94     console.log(ans);
 95     console.log(typeof ans);
 96 
 97 
 98 </script>
 99 </body>
100 </html>

 

 

 

 

 

 
posted @ 2020-02-20 03:33  范仁义  阅读(419)  评论(0编辑  收藏  举报