变量、判断

 
变量:
  命名规则(常用):字母、数组、下划线、&,不能以数字开头。适用于:变量、函数名、class名、对象属性名

  声明:var let  const的区别

赋值:为赋值时,默认undefined,值决定变量的类型(弱类型语言)
       
        解构赋值:当多个变量与数组或对象值对应时:
            值交换:[a,b]=[b,a]
            for……of获取键值对
         模式和变量:模式不能匹配时,变量值是undefined
         {x,y}={y=1},x和y既是模式也是变量,y的值是1,x没有匹配到
           
表达式:由变量、运算符、基本数据组成

运算符:
    算术:+ - * / % += ++ --
    比较运算符:> < == >= ===
    逻辑运算符:&& || ! &&= ||=
    链判断: ?.  当链式调用为undefined时,提前结束
    unll判断运算符:??  ,与||相比,验证能是unll和undefined

数据类型:
    基本类型:string number boolean undefined unll Symbol bigInt
    引用类型:array object function
    Object。prototype.toString.call(),结果是"[object 首字母大写的数据类型]"

    基本类型存在栈中,引用类型存在堆中
    基本类型不能修改值
    栈中的每一个数据独占一个内存空间(系统自动分配)
    栈中存储基本类型数据,引用类型的指向堆中存储引用类型的数据
    栈是先进后出,堆里的数据是无序的
    栈中的内存空间固定的,堆中的内存空间动态分配,大小可以调整

变量提升:
    var声明变量:提升值当前作用域顶部
    let、const、函数声明是块级作用域

数据转换:
    数字与字符串:
        强制:String()  Number()
            转成字符串:String(100) .toString()
            转成数字:Number() parseInt() parseFloat()
            Number将纯数字字符串转成数字,将其他转成NaN
            parseInt将首字符是非数字的字符串转成NaN,其他情况遇到非数字停止转化,与parseFloat相比,不支持小数
        隐式:运算符
            转成字符串:+" "
            转成数字:*1 /1 -0
            转成布尔值:!!数据

布尔值:
    false类型:false、 0、 undefined、 unll、 NaN、 " "、 0n

    !"0"=="0"
    ![]==[]
 
 
 
条件、判断

if……else       如果……否则
if……else if……else  
if                                                                        
&&
||
? :
switch

条件:
    短路原则,当多个条件&&连接时,有一个不成立,则不判断其他条件;多条件用||连接时,有一个成立时就时true
    &&连接,要求尽可能将不成立的条件放在第一个
    ||连接,尽可能将成立的条件放在第一个
posted @   孟仔  阅读(25)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
点击右上角即可分享
微信分享提示