分享

JavaScript 学习-10.使用const声明常量

 上海悠悠 2022-05-19 发布于上海

前言

const 用于声明一个或多个常量,声明时必须进行初始化,且初始化后值不可再修改。

const 声明常量

const定义常量与使用let 定义的变量相似:

  • 二者都是块级作用域

  • 都不能和它所在作用域内的其他变量或函数拥有相同的名称

两者还有以下两点区别:

  • const声明的常量必须初始化,而let声明的变量不用

  • const 定义常量的值不能通过再赋值修改,也不能再次声明。而 let 定义的变量值可以修改。

块级作用域

const定义常量也有块级作用域

var a = 10;
const x = 'world';
if (a > 0){
const x = 'hello';
console.log(x); // 这里输出 x 为 hello
}
console.log(x); // 这里输出 x 为 world

不能和它所在作用域内的其他变量或函数拥有相同的名称

{
var x = 'world';
const x = 'hello'; // 报错
}

初始化

const声明的常量必须初始化,而let声明的变量不用

// 错误写法
const PI;
PI = 3.14

以下是正确写法,声明的同时赋值

// 正确写法
const PI = 3.14;

初始化后值不可再修改

const PI = 3.14;
PI = PI + 1; // 报错

并非真正的常量

使用 const 定义的字符串和数字类型是不可变的,当定义一个对象或数组时,里面的内容是可以修改的。

const 定义对象修改属性

const 定义对象可以修改属性

const person = {
name: "yoyo",
age: 20,
};
person.name = 'hello';
person.age = 30;
console.log(person.name); // hello
console.log(person.age); // age

但是不能给对象重新赋值

const person = {
name: "yoyo",
age: 20,
};
person = {name: 'xx', age: 23}; // 报错

const 定义数组修改成员

const 定义数组可以修改成员的值

const a = ['hello', 'world'];

// 修改元素
a[0] = "yoyo";
console.log(a); // ['yoyo', 'world']
a.shift('12');
console.log(a); // ['world']
a.unshift('xx');
console.log(a); // ['xx', 'world']
a.push('yy');
console.log(a); // ['xx', 'world', 'yy']

同样不能对常量数组重新赋值:

const a = ['hello', 'world'];
a = ['x', 'y']; // 报错

总结:常量就是值(内存地址)不能变化的量,const定义常用需给初始值。

2022年第 11 期《python接口web自动化+测试开发》课程,6月5号开学!

2022年第 1 期《Python 测试平台开发》课程

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多