js的变量

一、JavaScript的变量分类。js内存为堆或栈
1、基本数据类型变量
a.number 整型
b.string 字符串类型
c.Boolean 布尔值类型
d.null 空
e.undefined 未定义类型

PS:基本数据类型存放在栈中

2、引用数据类型变量
object 对象
array 数组
function 函数

PS:引用数据类型存放在堆中

二、JavaScript中var、let、const的区别和使用
1、var定义变量

var定义的变量能够预解析,如果变量没有定义就直接使用的话,JavaScript回去解析这个变量,代码不会报错,只会输出undefine
var定义的变量可以反复去定义,当然后面的会覆盖前面的

var a=1;
var a=2;

var在循环中使用的时候,循环体外依然可以使用
var在整个函数内都是有效的,比如说在for循环内定义的一个var变量,实际上其在for循环以外也是可以访问的

<script>
for(var i=0;i<arr.length;i++){
    console.log(i);
}
console.log(i);
</script>

2、let声明变量

  • let定义的变量不会预解析,必须先声明再使用,否则会报错
  • console.log(a)
    let a=2;
    

  • let不能定义已经定义过的变量(无论之前是用var定义的还是let或者const定义的)
    let已经被定义,不会被再次定义
  • let是块级作用域,函数内部使用let定义后,对函数外部无影响,简单说就是在一个{}里面生效
  • let b=1;
    let b=2;
    

3、const定义变量

  • const定义的变量不会预解析,必须先声明再使用,否则会报错
console.log(ccc)
const ccc=1;
  • const定义的变量不允许修改
const aaa=5;
aaa=6;

 

相关推荐

  1. js变量

    2024-03-26 23:32:05       43 阅读
  2. 变量命名不够恰当(js问题)

    2024-03-26 23:32:05       68 阅读
  3. 变量和函数提升(js问题)

    2024-03-26 23:32:05       68 阅读
  4. 变量和函数提升(js问题)

    2024-03-26 23:32:05       39 阅读
  5. js变量提升

    2024-03-26 23:32:05       51 阅读
  6. Node.js监听文件变化

    2024-03-26 23:32:05       58 阅读
  7. js-判断变量是否定义

    2024-03-26 23:32:05       45 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-26 23:32:05       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-26 23:32:05       106 阅读
  3. 在Django里面运行非项目文件

    2024-03-26 23:32:05       87 阅读
  4. Python语言-面向对象

    2024-03-26 23:32:05       96 阅读

热门阅读

  1. 每天一个数据分析题(二百三十一)

    2024-03-26 23:32:05       44 阅读
  2. Xilinx缓存使用说明和测试

    2024-03-26 23:32:05       33 阅读
  3. 浅谈uniapp优缺点

    2024-03-26 23:32:05       40 阅读
  4. 验证回文串

    2024-03-26 23:32:05       40 阅读
  5. 掌握大型语言模型的指南

    2024-03-26 23:32:05       43 阅读
  6. 如何解析Mysql中的binlog日志?

    2024-03-26 23:32:05       38 阅读
  7. Linux 下移植代码到ARM9 芯片需要注意的事项

    2024-03-26 23:32:05       40 阅读
  8. AI大模型学习

    2024-03-26 23:32:05       44 阅读