首页 > 其他分享 >var vs. let

var vs. let

时间:2023-06-06 13:35:35浏览次数:40  
标签:do console vs let something var dir

Block

A block statement is used to group zero or more statements. The block is delimited by a pair of curly brackets.

let (顺序声明,顺序赋值)

Declares a block scope local variable, optionally initializing it to a value.

var (优先声明,顺序赋值)

Declares a variable, optionally initializing it to a value.

为了美观 (var 不受 block scope 制约,所以只是美观),同域,重新声明并赋值

{
    // do something 1
    var a = 1;
    console.dir(a);
}
{
    // do something 2
    var a = 2;
    console.dir(a);
}

 

真正发挥作用(let 是 block scope 级的),不同域,互不影响

{
    // do something 1
    let a = 1;
    console.dir(a);
}
{
    // do something 2
    let a = 2;
    console.dir(a);
}

 

let 只能顺序声明,顺序赋值,下面这段程序是错的:

{
    // do something 1
    console.dir(a);
    let a = 1;
}

var 优先声明,顺序赋值,下面这段程序不会报错,但结果是undefined:

{
    // do something 1
    console.dir(a);
    var a = 1;
}

let 在本域一旦let 声明某个变量a ,则不可在本域再次声明a(var a; let a;均不可以)

{
    var a = 0;
    let a = 1;
    let a = 2;
    var a = 3;
}

编译错误,完全不能运行,影响所在的整个<script></script>

标签:do,console,vs,let,something,var,dir
From: https://www.cnblogs.com/zno2/p/6656892.html

相关文章

  • Google Guice 入门教程06 – Web 和 Servlet
    3Web和Servlet3.1快速开始我们从一个例子开始GuiceWeb的开发。首先准备我们的环境,由于是web开发,因此我们需要guice-servlet的jar包。log4j不是必须的,只是为了方便日志记录而已(Guice内部是使用jdk内部的logging包来完成日志记录的)。必可避免的要在web.xml中都一些手脚,这里先配......
  • VsCode配置Wdk7600开发环境 以及 "自动编译" 和 sources文件简单介绍..
    目录VsCode配置Wdk7600开发环境以及"自动编译"和sources文件简单介绍..一丶简介1.2软件安装1.3开发环境配置步骤1.4集成终端编译1.4.1集成任务1.4.2设置为全局任务.二丶Sources文件编程2.1INCLUDES字段2.2i386_SOURCES32位驱动使用内联汇编2.3AMD64_SOURCES使用......
  • 关于环境配置的步骤:VS+VS Code 网页项目
    1、下载nvm安装包并且安装//网址:https://github.com/coreybutler/nvm-windows/releases//下载的对象:nvm-setup.zip//下载完后解压,双击nvm-setup.exe,根据向导指引安装。//命令行验证:nvm-v//安装成功将显示Runningversionx.x.x(版本号)2、VSCode配置//打开......
  • vs中.\ 与 ..\ 区别
    在VisualStudio中,.和..是表示相对路径的两个特殊符号。.表示当前目录,例如:.\file.txt表示当前目录下的文件"file.txt"。..表示上一级目录,例如:..\file.txt表示上一级目录(即父目录)下的文件"file.txt"。.和..在路径表示中的作用是不同的。其中.代表当前目录,通常用......
  • TypeScript Vs JavaScript 区别
    一、观察1.JS平常的复制类型letval;val=123;val="123";val=true;val=[1,3,5];注意点:由于JS是弱类型的,所以只要定义了一个变量,就可以往这个变量中存储任意类型的数据也正是因为如此,所以会给我们带来一个问题2.假设a是一个数组,b是一个数值func......
  • vscode技巧----屏蔽python类型错误提示
    有一段python代码如下:fromwin32com.shellimportshellfromwin32com.shellimportshellcon结果出现类型错误的提示:在网上搜了一些方法都没有解决,而实际运行代码时,又不会出错,所以干脆就把这个告警提示屏蔽掉即可,如下所示:fromwin32com.shellimportshell......
  • win10,vs2015深度学习目标检测YOLOV5+deepsort C++多目标跟踪代码实现,源码注释,拿来即
    int8,FP16等选择,而且拿来即用,自己再win10安装上驱动可以立即使用,不用在自己配置,支持答疑。自己辛苦整理的,求大佬打赏一顿饭钱。苦苦苦、平时比较比忙,自己后期会继续发布真实场景项目;欢迎下载。优点:1、架构清晰,yolov5和sort是分开单独写的,可以随意拆解拼接,都是对外接口。2、支持答疑......
  • variable-sized object may not be initialized
    #include<stdio.h>intmain(void){intN;scanf("%d",&N);inta[N]={0};//错误在这,可以用变量定义数组,但不能初始化for(inti=0;i<N;++i){scanf("%d",&a[i]);}intM,sum=0;scanf("%d",&......
  • 文心一言 VS 讯飞星火 VS chatgpt (32)-- 算法导论5.2 4题
    四、利用指示器随机变量来解如下的帽子核对问题(hat-heckproblem):n位顾客,他们每个人给餐厅核对帽子的服务生一顶帽子。服务生以随机顺序将帽子归还给顾客。请问拿到自己帽子的客户的期望数是多少?文心一言:我们可以将这个问题转化为求解在指示器随机变量基础上的期望值。已知......
  • 如何让VSCode格式化代码时运算符两边不要添加空格
    很多格式化软件都是默认运算符两边加空格的,没给奇葩的人留一点选择的余地,经过自己的一番摸索终于找到了VSCode格式化代码时运算符两边不要添加空格的方法。之前在一个帖子上看到的,VSCode中针对C语言的代码格式化配置_vscode格式化c代码_booksyhay的博客-CSDN博客:https://blog.csdn......