小程序 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。

相关推荐
研☆香3 小时前
jQuery + Swiper.js 实现动态渲染轮播图
前端·javascript·jquery
特立独行的猫A7 小时前
仓颉版 Tauri:基于轻量化线程与纯血鸿蒙架构的下一代 Web 混合开发利器
javascript
李游Leo8 小时前
HarmonyOS 7 ArkTS + ohpm:三方 JS 库副作用隔离与 API 26 升级回归【鸿蒙心迹】
javascript·回归·harmonyos
你挚爱的强哥8 小时前
【sgKeyboard】自定义组件:虚拟键盘
前端·javascript·计算机外设
镭封8 小时前
基于微信小程序的移动端AI配音工作流设计
人工智能·小程序·媒体
锅里游的鱼吖8 小时前
echarts自定义折线图
前端·javascript·数据库
何何____9 小时前
Vue 全局事件总线详解
前端·javascript·vue.js
u01110267510 小时前
工具页案例图如何编写 alt让图片说明与处理场景对应
java·前端·javascript·图像处理·人工智能·算法·ai作画
事圆则缓10 小时前
Flutter 状态管理框架对比(五):GetX 的响应式、依赖注册与生命周期
前端·javascript·flutter
FX1317887KP_10 小时前
PET口语备考攻略:发音、语法、表达,三个问题怎么同时解决
小程序·ket口语·pet口语·fce备考·剑桥英语