原创

JavaScript之字面量、变量与常量的区别


字面量

字面量是 在计算机中描述 事/物,比如:

  • 我的工资是3000, 3000即数字字面量
  • '张三岁', 字符串字面量
  • [] 数组字面量,{} 对象字面量

变量(重点)

  1. 变量是 计算机储存数据的容器(盒子)
    • 变量不是数据本身,俗话就是用来装东西的一个盒子
    • 生活中的变量:宿舍、教室、HTML标签等
  2. 变量本质 是 程序内存 中申请一块用来存储数据的 空间

变量的基本使用

  1. 声明变量:要想使用变量,需要先创建/定义/声明变量

  2. 变量声明用let,赋值用赋值运算符=

    语法:

    let 变量名
    

    注: 声明变量由 **声明关键字、变量名(标志/标识符)**组成

  3. 更新变量,let不允许多次声明一个变量

    // 声明了一个age变量,同时里面存放数据为20(声明并赋值)
    let age = 20
    // 变量里的数据更新为23
    age = 23
    console.log(age)
    
  4. 同时声明多个变量

    语法:多个变量中间用逗号隔开

    	let age = 18, uname = '张三'
    // 提倡声明的方式
        let age = 23
        let uname = '张三'
        document.write(age, uname)
    
  5. 交换变量

    案例:有两个变量:num1里放的10,num2里放的20,最后变为num1里为20,num2里为10

     let num1 =10
     let num2 =20
     let temp 
    // 都是把右边给左边
     temp = num1
     num1 = num2
     num2 = temp 
     console.log(num1, num2)  
    

变量命名规则与规范

  • 规则: 必须遵守,不遵守就报错(法律层面)
  • 规范: 建议,不能遵守不会报错,但符合业内通识(道德层面)

规则:

  • 不能用 关键字(有特殊含义的字符,JS内置的一些英语词汇,如let 、var、 if、 for等

  • 只能用下划线、字母、数字、$组成,且数字不能开头

    let num$_ 
    

    字母严格区分大小写,如Age和age是不同的变量

规范:

  • 起名要有意义,不能a1 a2

遵守小驼峰命名法(第一个单词以小写字母开始,后面每个单词的首字母大写。例如:firstName、lastName)

变量拓展-let和var的区别

  • var 可以先试用 再声明(不合理)
  • var 声明过的变量可以重复声明(不合理)
  • var 如变量提升、全局变量、没有块级作用域等

交互变量拓展

  • 交互变量 就三部曲输入-内部计算-输出

    /* 
    有两个变量:num1里放的10,num2里放的20,
    最后变为num1里为20,num2里为10 
    */
    /* 核心思路:使用一个临时变量 做中间存储temp
    把num1赋值给temp(temp里存的是num1)
    把num2赋值给num1
    把temp赋值给num2
    */
     let num1 =10
     let num2 =20
     let temp 
     // 都是把右边给左边
     temp = num1
     num1 = num2
     num2 = temp 
     console.log(num1, num2)
    

常量的基本使用

  • 常量也是变量,只不过使用const声明被称为“常量”

  • 某个变量永远 不会改变的时候,就可以用const声明,而不是let

  • const语义化更好

  • 实际开发中,如React框架,基本用const

  • 使用规范和变量一样

    • 常量使用:

      //声明一个常量
      const G = 9.8
      //输出这个常量
      console.log(G)
      

      注: 常量不允许重新赋值,声明时就必须赋值(初始化),即不需要重新赋值的数据用const

  • 作者:管理员(联系作者)
  • 发表时间:2023-12-21 10:02
  • 版权声明:自由转载-非商用-非衍生-保持署名(创意共享3.0许可证)
  • 公众号转载:请在文末添加作者公众号二维码
  • 评论