全是干货——你不知道的那些前端小知识(3)

74 阅读3分钟

十一. 数字转布尔值 (非零即为真)

   console.log(Boolean(100))打印true
   转为true: 非零 非NaN数字 非空字符串
   转为false:NaN 0 空字符串 null undefined

十二. JS的运算符

    “+” “-” “*” “/” “ % ”
    (注:除了加法数据类型不是number类型时会进行拼接,其他都不会拼接会进行隐式转换)
    1. 赋值运算符(可以使用赋值号赋值)
    ‘+=’‘-=’‘*=’‘/=’‘%=’作为运算,可以简化代码量
    例 var a = 1
    a = a+1-- a+=1a+=10 值为11
    a = a-1-- a-=1 值为0
    a = a*3-- a*=3 值为3
    a = a/1-- a/=1 值为1
    a = a%1-- a%=1 值为0
    2.比较运算符
    ‘>’ '<' '>=' '<=' '=='(等于) '==='(全等) '!='(不等于) '!=='(不全等于)
    例:console.log(1>2) 打印false
    "=="只对比数据,不对比数据类型 “===”不仅对比数据还对比数据类型
    “>=”在对比数据时,两侧数据不同,如一侧是数字一侧是字符串,会进行隐式转换
    (隐式转换:JS内部帮助转换的)
    (显式转换:自己手动通过方法转换数据类型)
    “!=”和“!==”两者作用一样用于对比两侧数据是否相同,相同时false不同时true
    "!="只对比数据不对比数据类型(会进行隐式转换,转换成相同类型对比)
    "!=="对比数据且对比数据类型

十三. 逻辑运算符

     “&&” 逻辑与,逻辑且
     语法:变量1 && 变量2  表达式1 && 表达式2
     返回方式:第一个为真就返回后一个;第一个为假就返回第一个
     “//” 逻辑或
     语法:变量1 // 变量2
     返回方式:左侧为真就返回左侧;左侧为假就返回右侧
     “!” 逻辑非,取反
     语法:! 变量
     作用:改变变量值的布尔类型

十四. 自增自减

     变量名 前或后写++(--)
     “++”在前先运算自增,然后再参与表达式
     “++”在后先参与周围表达式,然后再运算自身

十五. 分支语句

    基于一个条件,决定执行哪段代码
    语法:if(条件){当条件为真时执行的代码}
    if判断:①从上往下依次检查,查询是否满足条件
           ②如果满足条件则执行当前分支,其他不执行
           ③如果不满足则会进入下一个if的判断,成功则执行,不成功则向下继续执行
           ④直到最后一个if成功则执行,不成功则不执行
           ⑤最后查看是否有else分支,如果有且前面所有if条件都为假时执行else分支
     switch(条件) switch case 在做对比时使用的严格的全等 也就是说会对比数据
     例:var a = 21     default会在上述的条件(case)都不满足时执行
     Switch...case 的穿透现象
     当case后面没有跟break时会从第一个满足条件的case开始执行,一直到最后一个或到后续的最近一个break
     三元表达式 
     JS分支语句的一种,执行的代码段只有一行
     语法:条件?条件为真时执行(只能一行);条件为假时执行(只能一行)
     例:true? console.log('条件为真');console.log('条件为假')