数据类型转换
如何使用谷歌浏览器,快速查看数据类型?
字符串的颜色是黑色,数值类型是蓝色的,布尔类型也是蓝色的,undefined和null是灰色的
转换成字符串类型
- toString()
var num = 5;
console.log(num.toString())
- String()
String()函数存在的意义:有些值没有toString(),这个时候可以使用String()。比如:undefined和Null
转换成数值类型
- Number()
Number()可以吧任意值转换成数值,如果转换的字符串中有一个不是数值的字符,返回NaN
- parseInt()
var num1 = parseInt("12.3abc"); //返回12,如果第一个字符是数字会解析直到遇到非数字结果
var num2 = parseInt("abc123"); //返回NaN,如果第一个字符不是数字或者符号就会返回NaN
- parseFloat()
parseFloat()把字符串转换成浮点数
parseFloat()和parseInt非常相似,不同之处在与
parseFloat会解析第一个,遇到第二个,或者非数字结束
如果解析的内容只有证书,解析成整数
- +,-0等运算
var str = '500';
console.log(+str); //取正
console.log(-str); // 取负
console.log(str - 0);
转换成布尔类型
- Boolean()
0"(空字符串) null undefined NaN 会转换成false
其他都会换成true
5种情况转换成false
操作符
运算符 operator
5 + 6
表达式 组成 由操作数和操作符,会有一个结果返回
算术运算符
+ - * / % 3%2
一元运算符
一元运算符:只有一个操作数的运算符
5 + 6 两个操作数的运算符 二元运算符
++:自身加一
–:自身减一
- 前置++
- 自身加一
var num1 = 5;
++ num1;
var num2 =6;
console.log(num1 + ++ num2);
- 后置++
- 后置++ 执行顺序是先返回表达式结果Num然后再对自身加1
var num1 = 5;
num1 ++;
逻辑运算符(布尔运算符)
&&与 两个操作数同时为true,结果为true,否则都是false
|| 或 两个操作数有一个为true,结果都为true,否则为false
! 非 取反
关系运算符(比较运算符)
< > >= <= 比较大小
== 等于 判断变量的值是否相等
!=不等于
=== 相等判断 先判断类型是否一致,在判断值
!== 不等
==与===的区别:==只有进行值得比较,===类型和值同时相等,则相等
var result = '55' ==55; //true
var result = '55' === 55; //false值相等,类型不相等
var result = 55 === 55; //true
运算符的优先级
优先级从高到低
1.()优先级最高
2.一元运算符 ++ -- !
3.算术运算符 先* / % 后+ -
4.关系运算符 > >= < <+
5.相等运算符 == != === !==
6.逻辑运算符 先%% 后||
练习
//练习1:
4 >=6 \\ '人' ='阿凡达' && !(12*2 == 144) && true
//简化
(4>=6)||('人' != '阿凡达')&&(!(12*2 == 144
//练习2:
var num = 10;
5 == num / 2 && (2 + 2 * num).tostring() === '22'