一.数据类型的转换
a.将数字类型转换为字符串
①tostring();null和undefine没有toSring()方法
Eg:var num=10;
var num_02=num.toString();
console.log(typeof num_02); //string
②String();
Eg:var num=10;
console.log(typeof String(num)); //string
③隐式转换 num+’’
Eg: var num=10;
var num_01=num+’’;
console.log(typeof num_01); //string
b.将字符串转换为数字类型
①Number();
Eg:var str_01=‘123abc’;
console.log(Number(str_01)); //NaN
var str_03=‘123456’;
console.log(Number(str_03)); //123456
console.log(typeof Number(str_03)); //number
特点:Number()可以把任意值转换成数值,如果要转换的字符串中有一个不是数值的字符,返回NaN
②parseInt();parseInt()方法是可以将字符串类型转换为整数的数字类型 存在数据精度丢失
Eg:var str=‘123.05’;
var ss=parseInt(str); //123
console.log(typeof ss); //number
③parsefloat();parseFloat()方法 是可以将字符串类型转换为浮点型的小数
Eg:var str=‘123.05’;
var ss_01=parseFloat(str);
console.log(ss_01); //123.05
console.log(typeof ss_01); //number
④+
Eg:var str_01=‘123abc’;
console.log(typeof +(str_01)) //number
注意:Eg:var str_01=‘123abc’;
console.log(parseInt(str_01)); //123
var str_02=‘abc123’;
console.log(parseFloat(str_02)); //NaN
在使用parseInt和parseFloat 转换字符串为数字类型时,一旦遇到非数字的类型字符 就不会在接着转换.
c.转换为Boolean类型
//转换为Boolean() 0 ,’’(空字符串),undefined,null,NaN为flase
Eg:var str = ‘abc’;
var num = 123;
console.log(Boolean(str)); //true
console.log(Boolean(num)); //true
//转换成false情况。null underfined '' 0 NaN
Eg:var a = null;
var b; //undefined
console.log(Boolean(a)); //false
console.log(Boolean(b)); //false
console.log(Boolean('')); //false
console.log(Boolean(0)); //false
console.log(Boolean(NaN)); //false
二.运算符:
a.算术运算符: + - * / % ++ --;(a++表示的是先赋值,后运算 ++a表示的是先运算,后赋值)
b.比较运算符:> < >= <= != (比较两个值是否相等) =(比较两个值和类型是否相等);(隐式转换为number类型比较)
c.赋值运算符:= += -= *= /= %=;
d.逻辑运算符: &&与(一真一假 为false 同真为true 同假为false)
||或 (一真一假为true 同假为false 其余为true)
!非(!true>false !false>true)
e.条件运算符/三目运算符/三元运算符 语法结构:条件?值1:值2