登录  /  注册
首页 > web前端 > js教程 > 正文

JavaScript学习之使用const声明常量

WBOY
发布: 2022-08-09 16:47:24
转载
2182人浏览过

本篇文章给大家带来了关于javascript的相关知识,其中主要介绍了关于使用const声明常量的相关问题,const 用于声明一个或多个常量,声明时必须进行初始化,且初始化后值不可再修改,下面一起来看一下,希望对大家有帮助。

JavaScript学习之使用const声明常量

【相关推荐:javascript视频教程web前端

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定义常用需给初始值。

【相关推荐:javascript视频教程web前端

以上就是JavaScript学习之使用const声明常量的详细内容,更多请关注php中文网其它相关文章!

智能AI问答
PHP中文网智能助手能迅速回答你的编程问题,提供实时的代码和解决方案,帮助你解决各种难题。不仅如此,它还能提供编程资源和学习指导,帮助你快速提升编程技能。无论你是初学者还是专业人士,AI智能助手都能成为你的可靠助手,助力你在编程领域取得更大的成就。
来源:CSDN网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
关于CSS思维导图的课件在哪? 课件
凡人来自于2024-04-16 10:10:18
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2024 //m.sbmmt.com/ All Rights Reserved | php.cn | 湘ICP备2023035733号