小编给大家分享一下javascript中声明常量的方法,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!在js中,可以使用const关键字声明常量,语法格式为“con
小编给大家分享一下javascript中声明常量的方法,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
在js中,可以使用const关键字声明常量,语法格式为“const 名称=值;”。const声明创建一个值的只读引用,但这并不意味着它所持有的值是不可变的,只是变量标识符不能重新分配。
本教程操作环境:windows7系统、javascript1.8.5版、Dell G3电脑。
const,用于声明常量。
注意:定义的变量的时候,必须同时初始化,且其值之后不可以修改。
const number = 42;try { number = 99;} catch (err) { console.log(err); // expected output: TypeError: invalid assignment to const `number' // Note - error messages will vary depending on browser}console.log(number);// expected output: 42
结果:
> TypeError: Assignment to constant variable.> 42
语法
const name1 = value1 [, name2 = value2 [, ... [, nameN = valueN]]];
nameN常量名称,可以是任意合法的标识符。valueN常量值,可以是任意合法的表达式。
描述
此声明创建一个常量,其作用域可以是全局或本地声明的块。 与var变量不同,全局常量不会变为 window 对象的属性。需要一个常数的初始化器;也就是说,您必须在声明的同一语句中指定它的值(这是有道理的,因为以后不能更改)。
const声明创建一个值的只读引用。但这并不意味着它所持有的值是不可变的,只是变量标识符不能重新分配。例如,在引用内容是对象的情况下,这意味着可以改变对象的内容(例如,其参数)。
关于“暂存死区”的所有讨论都适用于let和const。
一个常量不能和它所在作用域内的其他变量或函数拥有相同的名称。
示例
const 基本用法
常量在声明的时候可以使用大小写,但通常情况下全部用大写字母。
// 定义常量MY_FAV并赋值7const MY_FAV = 7;// 报错 - Uncaught TypeError: Assignment to constant variable.MY_FAV = 20;// MY_FAV is 7console.log('my favorite number is: ' + MY_FAV);// 尝试重新声明会报错// Uncaught SyntaxError: Identifier 'MY_FAV' has already been declaredconst MY_FAV = 20;// MY_FAV 保留给上面的常量,这个操作会失败var MY_FAV = 20;// 也会报错let MY_FAV = 20;
块作用域
注意块作用域的性质很重要
if (MY_FAV === 7) { // 没问题,并且创建了一个块作用域变量 MY_FAV // (works equally well with let to declare a block scoped non const variable) let MY_FAV = 20; // MY_FAV 现在为 20 console.log('my favorite number is ' + MY_FAV); // 这被提升到全局上下文并引发错误 var MY_FAV = 20;}// MY_FAV 依旧为7console.log('my favorite number is ' + MY_FAV);
常量要求一个初始值
// 报错// Uncaught SyntaxError: Missing initializer in const declarationconst FOO;
常量可以定义成对象和数组
const MY_OBJECT = {'key': 'value'};// 重写对象和上面一样会失败// Uncaught TypeError: Assignment to constant variable.MY_OBJECT = {'OTHER_KEY': 'value'};// 对象属性并不在保护的范围内// 下面这个声明会成功执行MY_OBJECT.key = 'otherValue'; // Use Object.freeze() to make object immutable// 也可以用来定义数组const MY_ARRAY = [];// 可以向数组填充数据MY_ARRAY.push('A'); // ["A"]// 但是,将一个新数组赋给变量会引发错误// Uncaught TypeError: Assignment to constant variable.MY_ARRAY = ['B'];
以上是“JavaScript中声明常量的方法”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网精选频道!
--结束END--
本文标题: JavaScript中声明常量的方法
本文链接: https://lsjlt.com/news/279924.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0