小程序开发的核心语言是 JavaScript,但实际运行环境并非浏览器,而是微信、支付宝等平台提供的自定义运行时。它不支持 window、document 等 BOM 对象,取而代之的是小程序特有的全局对象如 App、Page、Component 和 getApp()。开发者需严格遵循平台 API 规范,例如用 wx.request 替代 fetch,用 wx.navigateTo 控制页面跳转。
函数是组织逻辑的关键单元。页面生命周期函数(如 onLoad、onShow)、事件处理函数(如 bindtap 对应的 tap 处理器)均由框架自动调用,开发者只需按约定签名编写。注意 this 指向始终为当前 Page 或 Component 实例,无需手动绑定;但异步回调中若需访问 this.data 或 this.setData,建议使用箭头函数或提前缓存 this。
变量管理需区分三类作用域:全局变量可通过 getApp().globalData 存取,适合跨页面共享登录态等轻量数据;页面级变量放在 Page 构造器的 data 对象中,仅响应式更新视图;而局部变量则直接声明在函数内,避免污染 data 或造成内存泄漏。切忌直接修改 data 中的对象属性(如 this.data.obj.key = val),必须通过 setData 通知框架刷新。

AI设计,仅供参考
setData 是变量同步的唯一可靠途径,但它有性能开销和异步特性。应避免高频调用,合并更新字段,并谨慎使用深层路径更新(如 ‘user.profile.name’)。对于不涉及视图更新的中间计算,优先使用 const/let 声明普通变量,而非塞入 data。
小程序还提供模块化能力:通过 require 引入本地 JS 文件,或 import 加载 ES6 模块(需基础库 2.19.0+)。公共工具函数建议封装为独立模块,配合 export 导出,既提升复用性,也避免全局命名冲突。所有变量与函数都应具备明确语义,减少隐式依赖,保障代码可维护性。