当前位置:首页 > JavaScript

Js实现const

2026-01-31 21:27:36JavaScript

在 JavaScript 中,const 是用于声明常量的关键字,其值在声明后不能被重新赋值。以下是关于 const 的详细说明和用法:

基本语法

const identifier = value;
  • identifier 是常量名称,遵循变量命名规则。
  • value 是初始值,声明时必须赋值,否则会报错。

特性

  1. 不可重新赋值
    const 声明的常量不能被重新赋值,否则会抛出 TypeError

    const PI = 3.14;
    PI = 3.14159; // 报错:Assignment to constant variable
  2. 块级作用域
    constlet 类似,具有块级作用域(仅在 {} 内有效)。

    Js实现const

    if (true) {
      const x = 10;
    }
    console.log(x); // 报错:x is not defined
  3. 必须初始化
    声明时必须赋值,否则会报语法错误。

    const x; // 报错:Missing initializer in const declaration
  4. 不提升变量
    const 声明的常量不会提升,存在暂时性死区(TDZ)。

    Js实现const

注意事项

  • 对象和数组的可变性
    const 仅保证标识符不可重新赋值,但对象或数组的内容可以修改。

    const arr = [1, 2];
    arr.push(3); // 允许
    arr = [4, 5]; // 报错
    
    const obj = { name: "Alice" };
    obj.age = 30; // 允许
    obj = {}; // 报错
  • 冻结对象
    如需完全不可变,可使用 Object.freeze()

    const obj = Object.freeze({ name: "Alice" });
    obj.age = 30; // 静默失败(严格模式下报错)

使用场景

  • 声明不会改变的常量(如配置值、数学常量)。
  • 引用类型需保持引用不变时(如 React 组件 props)。

letvar 对比

关键字 作用域 可重新赋值 提升 需初始化
var 函数作用域
let 块级作用域
const 块级作用域

通过合理使用 const,可以提升代码的可读性和安全性。

标签: Jsconst
分享给朋友:

相关文章

Js实现划词翻译

Js实现划词翻译

实现划词翻译的基本思路 划词翻译的核心是监听用户鼠标选中文本的事件,获取选中内容后调用翻译API,最后以弹窗等形式展示翻译结果。以下是具体实现方法: 监听文本选中事件 通过mouseup事件监听用户…

Js实现冰墩墩

Js实现冰墩墩

使用Canvas绘制冰墩墩 在JavaScript中,可以通过Canvas API绘制冰墩墩形象。以下是实现的基本代码框架: const canvas = document.getElementBy…

Js实现reset

Js实现reset

使用 HTMLFormElement.reset() 方法 通过 JavaScript 直接调用表单的 reset() 方法可以重置表单内的所有输入字段为初始值: document.getEleme…

Js 扫描实现

Js 扫描实现

实现 JavaScript 扫描功能 JavaScript 扫描功能通常涉及文件系统遍历、内容分析或网络请求监控。以下是几种常见场景的实现方法: 文件系统扫描 使用 Node.js 的 fs 模块可…

怎么用Js实现图片移动

怎么用Js实现图片移动

使用CSS和JavaScript实现图片移动 通过修改图片的CSS属性(如left、top或transform)可以实现图片移动效果。以下是两种常见方法: 方法一:通过修改left和top属性 假设…

Js实现划词翻译

Js实现划词翻译

划词翻译的实现思路 划词翻译功能可以通过监听用户鼠标选中文本的事件,获取选中的文本内容,然后调用翻译API进行翻译,最后将翻译结果显示在页面上。 获取选中文本 通过window.getSelecti…