在vue中let var 和const 区别
let和const 使用方法:
(1).有没有感觉到在 javascript 使用var会发生变量提升,即脚本开始运行时,
变量已经存在了,但是没有值,所以会输出undefined。
而let不会发生变量提升,这表示在声明它之前,变量是不存在的,这时如果用到它,
就会抛出一个错误。
(2). var 是函数级作用域,let是块级作用域
例子:
{
let n = 10;
var m = 1;
}
结果:n // 会报错:ReferenceError:a is not defined.
结果:m // 1
(2).let不允许在相同作用域内,重复声明同一个变量:
例子:
function(){
let n = 10;
var n = 1;
}
//报错
function(){
let n = 10;
let n = 1;
}
//报错
(3).const声明一个只读的常量,且声明后,常量的值是不能改变的
const PI = 3.1415;
PI = 3;
//报出异常:TypeError: Assignment to constant variable
(4).const命令声明的常量也是不提升,只能在声明的位置后面使用。
例子:
{
const a = 10;
}
console.log(a);
//报错
(5).const与let 一样不可重复声明
(6).复合类型的变量,变量名不指向数据,它是指向数据所在的地址,
const只保证变量名指向的地址是不变的,并不能保证它地址的数据是不变的,
所以将一个对象声明为常量必须非常小心.
const n = {};
n.prop = aaa;
console.log(n.prop); // aaa
n = {}; // 报错
在vue中let var 和const 区别的更多相关文章
- let、var、const区别(表格比较)
let.var.const区别(表格比较): 区别项 let var const 作用域 块级作用域 全局作用域或函数作用域 块级作用域 是否有变量提升 无 有 无 是否可重复声明 不可 可以 不可 ...
- vue中assets和static的区别
Vue中assets和static的区别 再一次框架定型中,与同事在静态资源的存放上有了一些分歧,后来经过查阅总结如下: 相同点: assets和static两个都是存放静态资源文件.项目中所需要 ...
- 深度理解js中var let const 区别
首先要理解js中作用域的概念 作用域:指的是一个变量的作用范围 1.全局作用域 直接写在script中的js代码,在js中,万物皆对象,都在全局作用域,全局作用域在页面打开时创建,在全局作用域中有一个 ...
- ES6中的var let const应如何选择
javascript世界里面的每个人都在说有关ECMAScript 6 (ES6,也称作ES 2015)的话题,对象的巨大变化 ( 类 , super() , 等), 函数 (默认参数等), 以及模块 ...
- vue中$route 和$router的区别
在vue中会出现一种情况 const url=this.$route.query.returnURL; this.$router.push(url); $router和$route的区别傻傻的分 ...
- Vue中computed与method的区别
转载于:https://segmentfault.com/a/1190000014478664?utm_source=tag-newest 1.computed区别于method的两个核心 在官方文档 ...
- vue 中 assets 和 static 的区别
Vue中的静态资源管理(src下的assets和static文件夹的区别)
- Vue中computed和watch的区别
在vue中computed和watch的真正区别是:computed产生于它的依赖,而watch产生于它的依赖的变化.只要依赖存在,我们就能访问到其对应的computed属性:但只有依赖发生了改变,我 ...
- var let const区别
var let const 可否同一作用域下声明同名变量 可以 不可以 不可以 声明的变量是否会挂载到window上 会 不会 不会 声明变量是否存在变量提升 存在 不存在(变量必须声明之后才能使 ...
随机推荐
- LAMP环境的搭建(一)----Apache安装
centos是Linux发行版RedHat的一个分支,因此可以很方便的使用yum安装并管理各种软件包. 本文使用的系统环境为:阿里云Centos7.2. Apache的安装: 输入命令: yum –y ...
- 论林耐斯-Linux系统的重要性
Linux--LinNaiSi系统的重要性... ===================================================== 飞机的控制系统.银行的系统.手机的系统我们 ...
- 获取当前页面URL信息
文章链接:http://www.cnblogs.com/hongmaju/p/5510988.html 查看信息可以在控制台输出(tab或者右移补全): 如:document.URL window. ...
- Pyinstaller(python打包为exe文件)
需求分析: python脚本如果在没有安装python的机器上不能运行,所以将脚本打包成exe文件,降低脚本对环境的依赖性,同时运行更加迅速. 当然打包的脚本似乎不是在所有的win平台下都能使用, ...
- CODE大全给你推荐几个免费的leapftp 注册码
leapftp 2.7.6 注册码, Name: Kmos/CiA in 1999 s/n: MOD1-MO2D-M3OD-NOPQ LeapFTP2.7.5 注册名:swzn 注册码:214065- ...
- SQL分组查询
把数据分成多个逻辑组,以便能对每个组的数据进行操作,对每个组进行聚集计算. 1.创建分组 分组是在SELECT语句的GROUP BY子句中建立的 例子: SELECT vendId ...
- Element is not clickable at point error in chrome
I see this only in Chrome. The full error message reads: "org.openqa.selenium.WebDriverExceptio ...
- exjs上传图片异常:com.jspsmart.upload.SmartUploadException: File can't be saved (1120).
错误: 文件名格式不对:未命??.jpg SmartUpload mySmartUpload = new SmartUpload(); com.jspsmart.upload.File myFile ...
- python 魔法方法(学习过程的笔记)
有小伙伴会问,什么是python的魔法方法,python的魔法方法有什么用呢, 它们在面向对象的Python的处处皆是.它们是一些可以让你对类添加"魔法"的特殊方法. 它们经常是两 ...
- java-多个数的和
目的:实现多个整数相加. 思路:1.首先要确定用户所需整数的个数n,此部分由用户在键盘上输入. 2.创建一个长度为n的数组. 3.用户从键盘上输入n个整数并判断是否输入正确,正确则存入数组,否则重新输 ...