你好javascript day2

1)数据类型的转换

查看数据类型

typeof( ) 

// 隐式转换
var a="1";
var b=2;
console.log(a+b);//结果是 12
console.log(b-a);//结果是1
//正常逻辑下会报错   number 与 string 运算
// 这种情况只可能发生再弱类型语句中,类型不相同,弱类型语言会自动将数据转换为对应的类型

 // 强制转换  主动将数据的类型强制转换为某种类型
String();强制转换为字符串
Number();强制转换为数值类型
toString();转换进制 二进制 等
toFixed();将数值转换成字符串四舍五入保留小数点后几位 有精度误差
parseInt(字符,进制); toString();的逆转换 可以把指定字符以指定进制转换为数值 只有一个值就是强转数值整型 2.01---》2
parseFloat(); 强转小数 保留小数点后几位小数
Boolean(数据); 转换为布尔值 true false
isNaN(); 转换为非数值

 2)算术运算符

 +  加法   -  减法    * 乘法      /  除法  %  取余 

//+
//字符相加  “2”+“6”————》26
//数值相加   2+6—————》8
//字符加数值 "2"+6 ————》 26
//如果字符与非字符相加会自动转换toString() 字符
//onclick 点击事件侦听

 3)算赋值运算和一元运算 

 +=    -=     *=     /=      %=

var a=10;
a+=4;//这里a的值为14   4等于加了4个步长一个步长是1
a-=4;//这里a的值为6    减去4个步长
a*=4;//这里a的值为40   乘以4个步长
a/=4;//这里a的值为2.5   除以4
a%=4;//这里a的值为0    10除以4 取余为0

 一元运算

--   递减     ++   递增 

var  a=10;
a--;//9    10-1
a++;//10   9+1

 思考下面每个i的值和 i-- 与 --i 的区别

 var i=60;
    var m=--i - i-- - i - i-- - i--;
//173= 60 - 59 - 59 - 58 - 57
    console.log(m,i);//173 57

 --i    i本身的值未发生改变     i--  i的值发生了改变

3)关系运算符 

 >=  大于等于   <= 小于等于   < 小于    > 大于  ==  相对等于   ===绝对等于   != 不等于   !==绝对不等

==  与  ===

== 比较时  先隐式转换为相同类型再比较     undefined  == null    结果为true·  0  ==  null  结果为false        ”“ == false  结果为·true·     0 ==”“  结果为true·    0 == false  结果为true  NaN==NaN    结果 false 非数值永远不相等

=== 比较时  比较严格   undefined ===  null     结果为 false

4)逻辑运算符

  &&  与         ||   或

&& 同时满足多个条件

true && true  // true

false  && true· // false

true· && false //false

false  && false //false

||  满足任意一个即可

true ||  true  //返回第一个true

false ||  true· // 返回true·

false || false // 返回false

true·|| false //返回true

var a=6;
console.log(a>5 &&  a<10); // true
console.log(a>5 && a <10 &&  a==8); // false  
console.log(a>5 || a<10); //true
console.log(a>10 || a<10); //true
console.log(a<5 || a=5); //false
原文地址:https://www.cnblogs.com/zqm0924/p/12867010.html