JS变量
发布日期:2021-08-21 13:18:08 浏览次数:35 分类:技术文章

本文共 910 字,大约阅读时间需要 3 分钟。

  • 变量:就是存储在里面的数据是随时可以变化的。
  • 在使用变量之前,需要我们先声明变量,声明变量的关键字有三个,,var,let,const, varES6之前一直使用的声明方式,从ES6开始,新增了letconst
  • 声明变量语法:
    • 关键字  变量名。var i
    • 如果通过var声明了变量,但是没有赋值,会输出undefined 

                        

  • 变量的声明和赋值是可以同时进行的,如果是第一个给变量赋值,那么这个过程叫做变量的初始化 

                        

  • 可以一次声明多个变量 

                        

  • 在声明变量的时候只能进行赋值操作,不能进行其他的运算操作
  • 支持重复声明 

                        

  • 重复声明没有赋值的情况下,会忽略该声明

        

    • 支持遗漏声明
  • 由于js是一门解释性语言(动态语言),所以声明好的变量可以存储任何类型 

        

  • let不支持重复声明和遗漏声明 

          

  • 变量提升
    • 之所以现在不推荐使用var来声明变量,是因为var声明的变量存在一个变量提升,所谓变量提升,就是指将变量的声明提升至当前作用域的顶部。 

        

  • let声明的变量就不存在变量提升的问题
  • var声明的变量不存在块级作用域
    • 在其他静态语言里面,通过一对大括号{}可以定义一个块级作用域 

        

  • let声明就有这个块级作用域 

        

  • 常量:指不变的量,不可更改
  • const:也是声明变量的一种方式,但是声明的变量不能改变。 

        

  • JS数据类型分类
    • 基本数据类型(原始值,简单值)
      • 简单值:指最简单的数据段,不可再拆分
      • 常见的简单值:let i=5
      • 简单值存储于栈区,因为原始数据所占的大小空间是固定的
      • 数据复制的时候,是值的拷贝 

        

  • 进行比较的是值,也就是说值相等,那么这两个变量就相等 

        

  • 引用数据类型(复杂值)
    • 指多个简单值所构成的数据,是可以拆分的
    • 常见的复杂值:let arr=[1,”hello”]
    • 复杂值存储于堆区,因为引用类型的数据大小不固定,所以无法在栈区开辟合适的空间。
    • 数据复制的时候,是地址 

       

    • 进行比较的是地址,地址相等,才算是相等 

转载于:https://www.cnblogs.com/lwww/p/7965963.html

转载地址:https://blog.csdn.net/weixin_33720078/article/details/93725227 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:python中base64编码与解码
下一篇:non linear processor

发表评论

最新留言

做的很好,不错不错
[***.243.131.199]2024年03月09日 02时37分57秒