JavaScript学习笔记2

一、逻辑运算符
  1. 非!:对布尔值进行取反操作,如果是对非布尔值进行取反,则会先转换为布尔值,再取反。利用此特点可以将任意数据类型取两次反来将其转换为布尔值。原理和Boolean()一样。
  2. 与&&:JS中的“与”是短路的与,如果第一个值为false,则不会看第二个值。
  3. 或||:JS中的“或”是短路的或,如果第一个值为true,则不会看第二个值。
  4. 对非布尔值进行与或运算时,会将其先转换为布尔值,再进行运算,并且返回原值
    (1)与运算:如果第一个值为true,则必然返回第二个值,如果第一个值为false,则必然返回第一个值。
    (2)或运算:如果第一个值为true,则返回第一个值,如果第一个值为false,则返回第二个值。
二、赋值运算符和关系运算符
  1. =、+=、-=、*=、/=:和C一样。
  2. >、<、>= 、<=、==。注意:任何值和NaN做比较都是false;对非数值进行比较,会将其转换为数字染回再进行比较;如果比较符号两侧都是字符串,不会将其转换为数值进行比较,而会分别比较字符的Unicode编码(一位一位比较,如果相同则比较下一位),所以在对两个字符串型的数字作比较时,要转型(+“5”)。
  3. 使用==或!=来做运算时,如果两个值的类型不同,则会自动进行类型转换,将其转换为相同类型。注意:undefined衍生自null,所以这两个值做判断时会返回true;NaN不和任何值相等,包括它本身(可以调用isNaN()函数判断一个值是否为NaN)。
  4. ===全等:用来判断两个值是否全等,他和相等类似,不同的是他不会做自动的类型转换,如果两个值得类型不同,直接返回false。例如:null和undefined相等但不全等。
  5. !==不全等:判断两个值是否不全等,羽泉等类似有不会做类型转换,如果两个值的类型不同,直接返回true。
<script type="text/javascript">
      console.log(null==0);//false
      console.log(null==undefined);//true
      console.log(NaN==NaN);//false
   </script>
  1. unicode编码问题:在字符串中使用转义字符输入Unicode编码:\u四位编码(16进制);在网页中使用Unicode编码:&#编码,这里的编码需要的是10进制。
三、条件运算符(三元运算符)
  1. 语法:条件表达式?语句1:语句2.(a>b?a:b)
  2. 执行流程:首先对表达式求值,如果该值为true,则执行语句1,并返回执行结果,如果该值为false,则执行语句2,并返回执行结果。
  3. 如果条件的表达式是一个非布尔值,会将其转换为布尔值然后再进行运算。
四、运算符优先级

大概知道就行

五、if语句

我感觉我又学了一遍C语言。。。。
就记一记switch吧。

switch(n)
{
    case 1:
        执行代码块 1
        break;
    case 2:
        执行代码块 2
        break;
    default:case 1case 2 不同时执行的代码
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值