前言

初学小程序时,在js中经常会申明变量,但是有时用var,有时用let,有时又用const。开始也没有仔细去研究区别,反正一律就用var(现在看来,以前的自己好懒)

var

概念:var申明的变量是全局变量,其作用域为所在的函数内

Page({data: {},onLoad: function (options) {var k=thisk.a()k.b()},a:function(){var a=4console.log("a函数中a="+a)},b:function(){var a=5console.log("b函数中a=" +a)}})

操控台打印结果

总结:从上面的测试代码我们可以看出,var 申明变量的作用范围只是在本函数内,在其他函数中是不起作用的。就像上述例子中a方法中的a变量只存在于a函数,对b函数中的a无影响。

let

概念:let申明的变量是局部变量,该变量只会在最靠近{ }内的范围有效,出了{}之后,该变量就不能够再用了,否则会报该变量未定义的错误。也就是说,该变量的作用域为所在的代码块内。

Page({data: {},onLoad: function (options) {var k=thisk.a()},a:function(){let i=1for(let i=0;i<5;i++){console.log("括号中的i="+i)}console.log("括号外面的i="+i)},
})

控制台打印结果

总结:从上面的测试代码我们可以看出,let申明变量的作用域只存在局部(可以理解为一个中括号内)。一旦出了括号,变量值就不是预先申明的值。

const

概念:一般用于申明常量,一般写在js文件的开头

const x=1
Page({data: {},onLoad: function (options) {var k=thisk.a()k.b()},a:function(){console.log("a函数中x="+x)},b:function(){console.log("b函数中x=" + x)}})

控制台打印结果

总结:可以看出,申明在js头部的const 常量,在整个js中都可以得到该变量的值。那么假设:a函数中申明一个const常量,那么b函数中可以正确打印其值吗?

测试!


Page({data: {},onLoad: function (options) {var k=thisk.a()k.b()},a:function(){const x = 1
console.log("a函数中x="+x)},b:function(){console.log("b函数中x=" + x)}})

控制台打印结果

说明:这里可以看出,a函数中申明的const常量x,在b函数中并不可以正确打印其值,说明其作用域并没有在b中!如果以后需要js中所有的函数都可以使用一个常量,那么就应该在js文件最上方申明const常量。

微信小程序--var、let、const的用法及区别相关推荐

  1. 微信小程序var,let,const的区别

    var 用var的方式声明的变量,为全局变量 let 声明块级变量,即局部变量 const 用于声明常量,也具有块级作用域 const PI=3.14;

  2. 微信小程序之movable-view的direction用法

    微信小程序之movable-view的direction用法 movable-view必须在 movable-area 组件中,并且必须是直接子节点,否则不能移动,movable-area的大小必须比 ...

  3. 微信小程序和H5网页之间有什么区别?

    微信小程序和H5网页之间有什么区别 本博主语录:小程序和H5网页的主要开发语言都是 JavaScript ,所以通常小程序的开发会被用来同普通的网页开发来做对比.两者有很大的相似性,对于前端开发者而言 ...

  4. [转]微信小程序和H5微网站有什么区别?

    时常有用户咨询:微信小程序和H5微网站有什么区别?哪个更好?这个问题,对于普通用户确实难以区分,今天我们就一起来对比一下两者的区别. 要对比,首先我们要知道,什么是微信小程序?微信官方定义:微信小程序 ...

  5. 微信小程序中wxs文件的用法

    微信小程序中的wxs文件,大家或多或少都有见过,但怎么使用呢?在项目开发中又能给我们带来什么便捷和解决什么问题呢?借助一个案例为大家介绍具体用法. 一.什么是wxs文件及wxs文件有什么作用 wxs相 ...

  6. 餐饮酒店的存酒卡怎么使用,开发一款存酒卡的微信小程序,var d = new Date(“2021-03-12“);

    <h2>JavaScript ISO 日期</h2><p id="demo"></p><script> var d = ...

  7. 微信小程序开发和APP开发有哪些区别

    在移动互联网大火的时代,APP和微信小程序已经成为了企业从移动端获取用户流量,实现盈利的重要端口.因为微信小程序体积小,操作方便,省去了下载安装这一操作,导致这两年微信小程序的势头是越来越猛,甚至有说 ...

  8. 微信小程序开发和网页Web开发的区别

    小程序和web开发的区别主要在前端.小程序的主要操作平台在微信上.微信服务器的前端代码和从用户数据库后台传过来的数据,通过微信内置的解释器进行拼接,解释为我们平时看到的页面.Web 开发仍然具有相同的 ...

  9. 微信小程序 Promise最简单的用法,解决异步问题

    用小程序做东西时遇到一个异步问题,比如上传图片需要读取返回的真实地址时,因为小程序异步的原因,程序会继续往下执行 往往是图片还没传完,下一步的函数都运行完了,这个时候根本取不到真实地址. 查看了很多文 ...

最新文章

  1. 关于Icon,Image,ImageIcon的简单的对比参考
  2. 封装不同类模板的随机数生成器
  3. Linux Bash Shell j简单入门
  4. python 利器_python利器之切片
  5. 免费送瑞星产品序列号?其实送的是Trojan-Downloader.Win32.VB.lbv
  6. Unity安装图文步骤
  7. 最大公约数与最小公倍数求法(欧几里得算法)
  8. 数据分析师工作的一点点感悟
  9. 【悟空云课堂】第七期:不安全的反射漏洞(CWE-470: Use of Externally-Controlled Input to Select Classes or Code)
  10. Axue8.0基础使用篇
  11. matlab某种水泥在凝固,Matlab实现多元回归实例
  12. 蒙特卡洛原理及实例(附Matlab代码)
  13. PMP需要提供什么资料来证明自己的项目管理经验
  14. 2019猪事顺遂,RAKsmart百万红包免费送!!!
  15. 中国余数定理练习题及规律总结,超强总结
  16. Spring Boot 配置文件这样加密,才足够安全!
  17. RFID票务管理系统
  18. Nvidia GTC China 19 keynote
  19. 数据库运维工程师的职责
  20. 用云开发做的校园跑腿微信小程序(商用版、毕设版),有视频教程

热门文章

  1. 体验笔记本MX350显卡配置深度学习环境(CUDA+tensorflow)
  2. DPDK中文-DPDK工具(pdump)
  3. C语言能被3整除,不能被5整除
  4. python中Flask框架介绍
  5. 践行公益担当 | 关爱留守儿童,暖到“心理”
  6. 给13寸macbook pro升级ssd,并重装双系统.
  7. ThinkPad t440p 左侧滋滋滋滋响
  8. 【Unity】类杀戮尖塔手牌系统实现(初始卡组、随机抽牌、卡牌绘制)
  9. 计算机应用试卷分析讲评课教案,试卷讲评课教案
  10. 从7岁儿童网购战斗机看家庭网络监护