js数据类型+运算符
目录
1.js的基本数据类型
1.undefined类型只有一个值,为undefined。使用var声明变量但未对其加以初始化,变量的值就为undefined。
例如:var test;//test==undefined;
2.Null类型值唯一为null。定义变量准备用于保存未知对象。
空对象指针,所以 typeof 结果为 object ,转为数值时为 0
-
alert(null == undefined); //true
-
alert(null === undefined); //false
3.Boolean类型有两个值,为true和false;
- String:非空为true,“”为false;
- Number:非0数字值(包括无穷大)为true,0或NaN为false;
- Object:任意对象为true,null为false;
- Undefined:直接为false;
4.Number类型包括整数、小数等各种数值类型;
5.string字类型为字符串,由单引号或双引号组成都可以,例如var str1='hellol'或者var str2="hello man";不过以单引号开头的必须单引号结尾,双引号开始的也必须用双引号结尾。
2.js引用数据类型
object就是几种基本类型无序的结合在一起,key一律是字符串,且object中可以有object。
3.数据类型强制转换
1.tostring
调用被转换数据类型的toString()方法,该方法不会影响到原变量,它会将转换的结果返回;Null,Undefined这两个值没有toString()方法
2.string
调用String()函数,将被转换的数据作为参数传递给函数,使用String()函数做强制类型转换时,对于Number和Boolean实际上就是调用toString()方法,当时对于Null和Undefined,就不会调用toString()方法,它会将null直接转换为"null",将undefined直接转换为"undefined
3.number
调用Number()函数转换为Number类型,如果是纯数字的字符串,则直接转换为数字;如果字符串中有非数字的内容,则转换为NaN;如果字符串是一个空串或者是一个全是空格的字符串,则转换为0
- true 转成 1,false 转成 0
- null 转成 0
- undefined 转成 NaN
- 调用parseInt() 把一个字符串转换为一个整数,可以将一个字符串中有效的整数内容取出来
- 调用parseFloat() 把一个字符串转换为一个浮点数,可以将一个字符串中有效的小数内容取出来
4.Boolean
- 调用Boolean()函数,数字中除了0,NaN,其余都是true
- 字符串中除了空串,其余都是true
- null,undefined都是false
- 对象也会转换为true
- 为任意数据类型做两次非运算,即可将其转换为布尔值
4.隐式类型转换(利用js弱变量类型转换)
隐式类型转换指的是字符串与数值之间的转换
一.值类型之间的数据类型转换:
(1)数字和字符串使用+运算符:
数字和字符串如果使用+运算符进行操作,那么会将数字先转换为字符串,然后进行字符串连接操作;
(2)布尔值参与的+运算符操作:
如果有布尔型参与,那么首先会将布尔值转换为对应的数字或者字符串,然后再进行相应的字符串连接或者算数运算。True是1,false是0。
(3)Null和Undefined参与的+运算符操作
如果和数字进行计算,null会转化为0,undefined会转化成NaN。
(4)减法操作:
如果一个操作数为string、boolean、null、undefined,则在后台调用Number()函数,将其转换成数值,再进行操作。如果进行减法操作,那么两个操作数都会先被转换为数字,然后在进行算数运算;
5.运算符
运算符( operator )也被称为操作符,是用于实现赋值、比较和执行算数运算等功能的符号。
JavaScript中常用的运算符有:
●算数运算符
浮点数值得最高精准度是17位小数,但在进行算术计算时其精准度远远不如整数
var result = 0.1+0.3; //结果不是0.3,而是:0.30000000000000004;
document.write(0.07*100); //结果不是7,而是:7.000000000000001;
所以不要直接判断两个浮点数是否相等
表达式和返回值
表达式:是由数字、运算符、变星等以能求得数值的有意义排列方法所得的组合简单理解:是由数字、运算符变量等组成的式子
表达式最终都会有一个结果 ,返回给我们,我们成为返回值
●递增和递减运算符
如果需要反复给数字量添加或减去1 , 可以使用递增( ++ )和递减( - - )运算符来完成。
在JavaScript中,递增( ++ )和递减( -- )既可以放在变量前面,也可以放在变量后面。放在变量前面时,
我们可以称为前置递增(递减)运算符,放在变量后面时,我们可以称为后置递增(递减)运算符。
注意:递增和递减运算符必须和变量配合使用。
1.前置递增:++num前置递增,就是自加1,类似于num=num+1,但是++num写起来更简单。
使用口诀:先自加,后返回值
2.后置递增:num++后置递增,就是自加1 ,类似于num= num+ 1 , 但是num++写起来更简单。
使用口诀:先返回原值,后自加
- 前置递增和后置递增运算符可以简化代码的编写,让变量的值+ 1比以前写法更简单
- 单独使用时,运行结果相同
- 与其他代码联用时,执行结果会不同
- 后置:先原值运算,后自加(先人后己)
- 前置:先自加,后运算(先已后人)
- 开发时,大多使用后置递增/减,并且代码独占- -行,例如: num+ +;或者num--;
●比较运算符
概念:比较运算符(关系运算符)是两个数据进行比较时所使用的运算符,比较运算后, 会返回一个布尔值( true / false )作为比较运算的结果。
console.log(3 >= 5); //false
console.log(2 <= 5); //ture
//程序里面的等于号是 ==
console.log(3 == 5); //false
console.log('张三' == '李四'); //flase
console.log(18 == 18); //true
console.log(18 == '18'); //true
console.log(18=='18');//ture
console.log(18==='18');//false
●逻辑运算符
概念:逻辑运算符是用来进行布尔值运算的运算符,其返回值也是布尔值。后面开发中经常用于多个条件的判断
// 1.逻辑与两侧都为true 结果才是true 只要有一侧为false 结果就为false
console .1 og(3 > 5 && 3 > 2); // false
console .1 og(3 < 5 && 3 > 2); // true
// 2.逻辑或|| or 两侧都为false 结果才是假false 只要有一侧为true 结果就是true
console.log(3 > 5| 3 > 2); // true
console.1og(3 > 5|| 3 < 2); // false
//逻辑非(! )也叫作取反符,来取一个布尔值相反的值,如true的相反值是false
var a = ! true;
console. log(a); // false
●赋值运算符
概念:用来把数据赋值给变量的运算符。
var age = 10;
age += 5; //相当于age=age+5;
age -= 5; //相当于age=age-5;
age *= 10; //相当于age=age*10;
本文地址:https://blog.csdn.net/weixin_47791640/article/details/107228508
上一篇: jQuery呼吸轮播图代码实例
下一篇: JavaScript中的流程语句详解