我是靠谱客的博主 无奈电话,最近开发中收集的这篇文章主要介绍ES6 学习系列---《const》,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

  • 一旦声明,变量值无法改变。
const a = 1;
a = 2; //error
  • 声明时需初始化
const a; // error
  • 作用域只在块区域内有效
if (true) {
const a = 1;
}
console.log(a); //error
  • 使用变量前必须声明
console.log(a); // error
const a = 2;
  • 不能重复声明
var a = 3;
const a = 4; // error
  • const本质:变量指向的内存地址不得改动,并非变量值不能改动。

    • 简单数据类型:值保存在内存地址中

    • 复杂数据类型(对象、数组)

      • 变量地址保存的只是一个指针,const仅保证该指针固定,无法保证指针所指的数据结构是否固定。

const foo = {};
foo.prop1 = 123;
foo.prop2 = 234;
foo = {}; //Uncaught TypeError: Assignment to constant variable.

foo可以添加属性,foo存储的是一个地址,该地址指向一个对象。不可变的是这个地址,即foo不能指向另一个地址,但是对象本身是可变的,可以为foo添加新属性。

const a = [];
a.push('hello');
a.length = 0;
a = ['Dave']; //Uncaught TypeError: Assignment to constant variable.

常量a是一个数组,数组本身是可写的,如果将另一个数组值赋给a,就会报错。

 

 

最后

以上就是无奈电话为你收集整理的ES6 学习系列---《const》的全部内容,希望文章能够帮你解决ES6 学习系列---《const》所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(81)

评论列表共有 0 条评论

立即
投稿
返回
顶部