小程序 const 在js中以及与同类的var和let之间的差异

javascript 复制代码
// 1. 固定常量(永远不变的配置,全部用 const)
const BASE_URL = 'https://api.xxx.com'; // 接口地址
const AVATAR_SIZE = 80; // 头像尺寸
const MAX_COUNT = 99; // 最大数量

// 2. 工具函数(用 const 定义)
const formatPrice = (num) => {
  return num.toFixed(2);
};

// 3. 页面入口(Page 内部用 const)
Page({
  // 数据
  data: {
    name: '张三',
    price: 0.9777
  },

  // 生命周期
  onLoad() {
    // 4. 函数内部:不会重新赋值 → 一律 const
    const title = '首页';
    const formattedPrice = formatPrice(this.data.price);

    this.setData({
      currentTitle: title,
      showPrice: formattedPrice
    });
  },

  // 事件
  changeName() {
    // 只会改 data,不会重新赋值 → 用 const
    const newName = '小程序用户';
    this.setData({ name: newName });
  },

  // 列表循环
  showList() {
    const list = [1, 2, 3, 4];
    // 循环 item 不变 → 用 const
    for (const item of list) {
      console.log(item);
    }
  }
});

Const,let和var的区别:

关键字 能不能重新赋值 作用域 推荐场景
const ❌ 不能 块级 90% 场景(固定值、对象、数组)
let ✅ 能 块级 计数器、会变的值
var ✅ 能 函数级 不要用

在小程序中 的使用逻辑:东西不会变 → const东西会变 → let永远别用 var。

相关推荐
meilindehuzi_a14 分钟前
Vue3组件样式隔离与组件通信实战:从 scoped、props 校验到记事本应用
前端·javascript·vue.js
To_OC8 小时前
我被 useState 坑了两次之后,终于把它的脾气摸透了
前端·javascript·react.js
kyriewen13 小时前
我review了一份Vibe Coding写的前端代码——能跑,但5个地方迟早要命
前端·javascript·ai编程
2501_9159184115 小时前
详解iOS App上架至App Store的全流程步骤与注意事项
android·macos·ios·小程序·uni-app·cocoa·iphone
Hilaku15 小时前
为什么在 2026 年,MPA(多页面应用)正在悄悄复辟?
前端·javascript·程序员
悟空瞎说15 小时前
iOS 高效绘图
javascript
触底反弹16 小时前
🔥 从 MySQL 到 Milvus:用 AI 日记本项目搞懂向量数据库和 RAG
javascript·人工智能·面试
妙码生花16 小时前
从 PHP 到 AI + Golang,程序员自救转型手记(三十九):前端上传组件实现
javascript·vue.js·ai编程
dota李天王16 小时前
简单的 socket 实现
前端·javascript·websocket
寒水馨17 小时前
Linux下载、安装 Bun v1.3.14(附安装包bun-linux-x64.zip)
linux·javascript·typescript·node.js·bun·运行时·包管理器