运算

【运算】、隐式转换结论 1、数字 + 字符串 :将数字转换为字符串 2、数字 + boolean :将 boolean 转换为 number类型 3、数字 + undefined :结果为 NaN,NaN的类型为 number 4、字符串 + boolean :将boolean 转换为 字符串 5、boolean + boolean :都转换成number在做相加运算注:NaN:not a number判断一个非数字如果不是一个数字返回true,如果是一个数字返回false二、显示转换/强制转换1.toString()将任意类型转换为字符串类型 2.parseInt(); 将一个数据转换为整数 3.parseFloat()将一个数据转换为小数4.Number将一个数据转换为number类型### 一、运算符的基本概念运算符可以将简单的表达式连接成复杂的表达式,例如我们上节课学到的字符串连接就是一个带有“+”运算符的表达式。"hello" + "world"; //返回值是字符串类型 hello world; ```var str = "hello" + "world"; /*我们通过“=”(赋值运算符)将带有“+”的表达式的返回值赋值给了str。str的值就变成了 字符串“hello world”*/console.log(str); //调用表达式。```我们可以按照运算符的操作类型就行分类,可以分为算数运算符、比较运算符、逻辑运算符、赋值运算符等。下面分别进行介绍。### 二、算数运算符|运算符|操作|类型||------|----|--------||+|加|num,num=>num||-|减|num,num=>num||*|乘|num,num=>num||/|除|num,num=>num||%|求余|num,num=>num||++|自增1|num=>num||--|自减1|num=>num|通过上面的表格我们可以了解到算数运算符的作用和返回值类型,其中加减乘除运算已经在前面的课程中有所了解,下面对求余、自增、自减进行讲解(demo01.html)* 求余表达式的返回值是两个数相除的余数var result = 10 % 3; //10除以3,得3与1 所以10 % 3表达式的值是1;console.log(result); //输出结果为1* 自增表达式可以使一个变量在原值的基础上加1* 自减表达式可以使一个变量在原值的基础上减1自增和自减运算符如果写在变量后面,那么表达式的返回值是变量本身,然后变量自增或自减,运算符写在变量前面,那么变大时的返回值直接就是变量自增或自减后的结果。### 三、比较运算符|运算符|操作|类型||------|----|--------||>|大于|num,num=>bool||>=|大于等于|num,num=>bool||<|小于|num,num=>bool||<=|小于等于|num,num=>bool||==|判断相等|any,any=>bool||!=|判断不等|any,any=>bool||===|判断恒等|any,any=>bool||!==|判断非恒等|any,any=>bool|通过上面的表格我们可以了解到比较运算符的作用和返回值类型,如果比较成立,返回true,如果不成立返回false.相等和恒等不同,当两个值的数据类型不相同的时候,他们可能相等,但不会恒等### 四、逻辑运算符|运算符|操作|类型||------|----|--------||&&|逻辑与|any,any=>any|||||逻辑或|any,any=>any||!|逻辑非|bool,bool|逻辑运算符进行布尔运算,经常和关系运算符一起配合使用,逻辑运算符将多个关系表达式组合起来组成一个更复杂的表达式。* 逻辑与(&&)var x = 10; var y = 20; console.log(x>30 && y>30); //第一个表达式为false直接返回falseconsole.log(x<30 && y>30); //第一个表达式是true,第二个为false,返回falseconsole.log(x<30 && y<30); //第一个表达式是true,第二个也是true,返回true```* 逻辑或(||)var x = 10; var y = 20; console.log(x>30 || y>30); //第一个表达式为false,第二个也是false,则返回falseconsole.log(x<30 || y>30); //第一个表达式是true,直接返回trueconsole.log(x>30 || y<30); //第一个表达式是false,第二个也是true,返回true```* 逻辑非(!)var x = true; var y = false; console.log(!x); //非真为假console.log(!y); //非假为真```

    推荐阅读