一 运算符的扩展
1. 算术运算符:
+:若两边有一个为字符串则进行拼接操作输出为字符串
– * /:若两边有一个为字符串则进行算术运算 输出为number;
例如:
console.log(5-"2");
console.log("5"*"5");
console.log(2+"5");
2. 比较运算符
==是等于 比较数值
=== 是全等 数值数据类型都比较
例如:`
var a=5=="5";
var b=5==="5";
console.log(a,b);
3. 布尔类型扩展
1.true: 1
在判断语句中:除了数字0,null,undefined和空字符串,其余数字均为真
false: 0
总结(在判断语句中):
false ,0,undefined ,null 和空字符串为假,其余都是真
4. 逻辑运算符
若运算符两边的操作数不是布尔类型,则运算结果也不一定是布尔类型
&&:
若第一个操作数为真,则结果是第二个操作数
若第一个操作数为假,则结果是第一个操作数
||:
若第一个操作数为真,则结果为第一个(第二个不执行)
若第一个操作数为假,则结果为第二个
例如:
var a=1,b=4,c=3
var d=a&&b+c||b-c//1&&7||1
console.log(d);
二 数据类型的转换
-
number——bolllean
隐式转化 :除了0位false 其他数值都位true -
bloolean——number
隐式转化:true——1, false——0 -
string——boolean
除了空字符串位false,其他都为true -
boolean——string
1)拼接空字符串:
var a=ture+’’";//“ture”
2)toString()
var a=true;
var b=a.toString();//“true” -
number——string
1)拼接空字符串
2)toString -
string——number
1)parseInt() 转换结果取整数
2)parseFloat() 转换
例如
var a="5.5"
console.log(parseInt(a),parseFloat(a));
三 其他扩展
精度问题:
在算术运算中是十进制转换为二进制运算的
所以0.20.2 !=0.4; 0.10.1 != 0.1
因此我们会用到 toFixed()保留小数点后位数 输出为字符串类型
实例
console.log(0.2 * 0.2);
console.log(0.1 * 0.1);
var a=0.2*0.2;
var b=a.toFixed(2);
console.log(b);