js中六种声明变量的方式
2022/3/26 23:26:24
本文主要是介绍js中六种声明变量的方式,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
var 在ES5阶段中,使用var具有以下特点: (1)没有块的概念,可以跨块访问,不能夸函数访问; (2)存在变量提升,赋值不提升 (undefined) let 在ES6阶段新增,新增出块的概念,新增块级作用域,具有以下特点: (1)let声明的变量只在它所在的代码块有效; (2)let不会出现变量提升,需先声明后使用,否则会报错; (3)暂存性死区,在代码块内,使用let使用变量之前,该变量都是不可用的; (4)不允许重复声明 const 用于声明一个只读的常量,具有以下特点: (1)一旦声明就必须立即初始化; (2)一旦声明,常量值就不能改变(指的是内存地址不能改变,但指向的数据结构不受控制;通过 Object.freeze() 方法,使对象的原始属性不可变, 但仍然可以更改嵌套对象); (3)块作用域内有效; (4)不存在变量提升; (5)存在暂时性死区; function 用于定义一个函数,具有以下特点: (1)函数声明后 需要调用的时候 才能执行; (2)对支持ES5和ES6的浏览器环境在块作用域内有一定区别,所以应避免在块级作用域内声明函数。 class ES6引入了class关键字,用来定义类。该写法相比于对象原型的 方式具有以下特点: (1)相比于对象原型的方式写法更清晰; (2)更像面向对象编程的语法(方便) ```JavaScript class Calculate { constructor(x, y) { this.x = x; this.y = y; } add() { return this.x + this.y; } } ``` import 用于加载模块,然后输出变量,具有以下特点: (1)import 命令接受一对大括号,其里面的变量名必须与被导入的模块对外接口的名称相同; (2)用 as 关键字可将输入的变量名重命名; (3)import 命令输入的变量都是只读的; (4)import 命令具有提升效果,会提升到整个模块的头部,首先执行(因为import命令实在编译阶段执行的,在代码运行之前); (5)import 是静态执行,不能使用表达式和变量; (6)import 会执行所加载的模块这篇关于js中六种声明变量的方式的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-16Vue3资料:新手入门必读教程
- 2024-11-16Vue3资料:新手入门全面指南
- 2024-11-16Vue资料:新手入门完全指南
- 2024-11-16Vue项目实战:新手入门指南
- 2024-11-16React Hooks之useEffect案例详解
- 2024-11-16useRef案例详解:React中的useRef使用教程
- 2024-11-16React Hooks之useState案例详解
- 2024-11-16Vue入门指南:从零开始搭建第一个Vue项目
- 2024-11-16Vue3学习:新手入门教程与实践指南
- 2024-11-16Vue3学习:从入门到初级实战教程