var let this的区别
var xx;
function test(){
var aa; //声明一
let bb; //声明二
this.cc; //声明三
//声明一局部代码块
{
let dd; //声明四
}
}
那么,这三种方式有什么区别呢?
区别在于作用域不同。
let
let 声明的变量作用域为某个代码块。而代码块的长度可大可小。
也就是说,当按声明二的方式声明一个变量时,该变量的作用范围于为整个function语句。
当按声明四方式声明一个变量时,该变量的作用范围为局部的代码块。
var
如果在函数内部,加var就是局部变量,不加是全局变量。
在函数外面,也就是说在window区域加不加var是一样的,该var变量的作用域为整个js文件周期(全局作用域)。
this
this多用于函数内部,它永远指向调用他的那个对象
简单地说,用this声明的变量作用域也是全局的。
如果实例化test函数 var p=new test() 那么用p能访问test函数内的哪些变量呢?
答案是只有cc 。实际上this声明的变量是作用于上下文的。
---------------------
作者:weixin_42617917
来源:CSDN
原文:https://blog.csdn.net/weixin_42617917/article/details/82709143
版权声明:本文为博主原创文章,转载请附上博文链接!
转载于:https://www.cnblogs.com/passerma/p/10588695.html
var let this的区别相关推荐
- var和dynamic的区别及如何正确使用dynamic?
1.var与dynamic的区别 C#中的很多关键词用法比较容易混淆,var和dynamic就是其中一组,但其实它们是有本质的区别的.var 在编译阶段已经确定类型,在初始化时候,必须提供初始化的 ...
- css里面的let,js中let和var定义变量的区别
javascript 严格模式 第一次接触let关键字,有一个要非常非常要注意的概念就是"javascript 严格模式",比如下述的代码运行就会报错: let hello = ' ...
- 前端开发:JS中let、var和const的区别详解
前言 前端开发过程中,JS声明变量的关键字想必开发者都不陌生,而且使用的频率在前端开发过程中也是数一数二的.JS中声明变量的关键字有三个let.var和const,但是三者的使用对比和区别也是非常重要 ...
- Var let const 的区别
Var let const 的区别 变量提升 var 存在变量提升 变量可以在声明之前调用 但是值为undefined. let ,const 不存在变量提升.他们声明的变量必须在声明后调用 如果在之 ...
- var 和 let的区别_let 和 var的区别
js定义变量前言 1.js 定义变量 使用 var 或者let 2.js定义常量 使用 const 3.var 定义变量是用js语言诞生就有的: let定义变量是从ES6新语法开始的. 4.let定义 ...
- JS中var和let的区别
var和let的区别: 区别: 1.使用var声明的变量,其作用域为该语句所在的函数内,且存在变量提升现象: 2.使用let声明的变量,其作用域为该语句所在的代码块内,不存在变量提升: 3.let不允 ...
- var与let的区别【一看就懂的知识】
今天偶尔翻看了一本书<JavaScript编程精解>,在函数这一章节中难免会看到"作用域"这个字眼,之前对于作用域的概念本就不是很敏感,也就匆匆略过了,反过来看时,才明 ...
- js中定义变量之②var let const的区别
var 上一篇文章有讲过,是js定义变量的关键词. 但是在es6中,新添加了两个关键词,用于变量声明的关键词:let 和const 接下来就说一下var let 和const的区别: 首先说var 用 ...
- ES6——let、const和var的用法和区别
ES6 新增了let命令,用来声明变量,新增了const命令,用来声明常量,它们的用法类似于var. let a = 1; var b = 2; const PI = 3.14; 主要区别 块级作用域 ...
最新文章
- unity在中文环境下的支持不好
- [转]获取机器的硬件信息(CPU ID序列号, 主板信息,硬盘序列号,系统信息)
- R中rep函数的使用
- java分治_【Java算法】什么是分治算法?
- influxdb删除某一列(tag或者field)
- AI产品开发的核心原则:以研究为核心驱动
- 算法之数学--常用数学公式,规律神器OEIS 2021-03-09
- 绿色版电子书PDF转换Word转换器
- 第九届蓝桥杯题解(部分)
- 数学符号的读音——那些你总是记不住的数学符号的读音(α,β,γ,δ,ε,λ,ζ,η,θ,ξ,σ,φ,ψ,ω...)
- Flutter 3更新详解
- 用可视化解构BERT,我们从上亿参数中提取出了6种直观模式
- 像素级图像融合常用方法
- (原創) 如何使用ModelSim-Altera對Nios II仿真? (SOC) (Nios II) (SOPC Builder) (ModelSim) (DE2)...
- Appium+Pytest+Allure集成PO项目管理模式实现自动化测试
- 为2020年的第一场雪锦上添花:用 matplotlib 绘制雪花和雪景
- OpenDNS(转)
- python黄金走势预测_python实时获取和讯网纸黄金价格信息
- 无人值守安装RHEL6
- CVPR 2023 | 一键去除视频闪烁,该研究提出了一个通用框架
热门文章
- php4 apache 配置,[开发环境配置]windows下php4+mysql4+apache2开发环境配置
- 五行塔怎么吃第五个_中医美容——“五行美容养颜法”,善用五行,女人会越来越漂亮...
- 乒乓球十一分制比赛规则_乒乓球的基本比赛规则
- python tkinter布局混用_python tkinter布局界面如何实现?
- python数据展示库_收藏!盘点很实用的数据科学Python库
- 本地更新github项目_GitHub开源项目2019-03-29更新精选
- Git初学札记(一)————Git简介与安装
- 通俗易懂的SpringBoot教程---day2---Springboot配置文件
- 蓝桥杯大赛基础之--数列排序
- 笔记本超频会烧吗_笔记本电脑cpu超频是什么意思?超频会怎样啊?