• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >JavaScript > ES6新特性一: let和const命令详解

ES6新特性一: let和const命令详解

作者:Dason_yu 字体:[增加 减小] 来源:互联网 时间:2017-05-11

Dason_yu通过本文主要向大家介绍了es6 let const,es6 const,es6中let,es6 let,es6新特性等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

本文实例讲述了ES6新特性中的let和const命令。分享给大家供大家参考,具体如下:

1. let 命令

① 在js中是没有块级作用域的,var 声明的变量作用域是整个函数体,而let可以起到这一作用

{
  let a = 1;
  var b = 2;
}
console.log(b); // 2
console.log(a); // a is not defind

</div>

② 而let可以起到这一作用啊在js中变量和函数的声明会提升到当前作用域最顶部执行。这样就会出现问题。

var a = [];
//函数和变量i会最先进行声明,同时全局变量i经过for循环赋值为10
for (var i = 0; i < 10; i++) {
  a[i] = function () {
    console.log(i);
  };
}
console.log(i);//10
a[6]();//10

</div>

而使用let就解决了这个问题

for (let i = 0; i < 10; i++) {
  a[i] = function () {
    console.log(i);
  };
}
a[6](); //6

</div>

③ let不像var那样,会发生“变量提升”现象

console.log(a); // a is not defined
let a = 1;

</div>

④ let不允许在相同块级作用域内,重复声明同一个变量

// 报错
{
  let a = 10;
  var a = 1;
}
// 报错
{
  let a = 10;
  let a = 1;
}

</div>

2. const 命令

① const也用来声明变量,但是声明的是常量。一旦声明,常量的值就不能改变。
② 与let相同也不能在相同块级作用域内重复声明同一个变量。
③ const的作用域与let命令相同:只在声明所在的块级作用域内有效。

const PI = 3.1415;
console.log(PI); // 3.1415
//PI = 3; // Assignment to constant variable.(不能给常量赋值)
//const PI = 3.1;// Identifier 'PI' has already been declared

</div>

希望本文所述对大家ECMAScript程序设计有所帮助。

</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • ES6新特性一: let和const命令详解

相关文章

  • 2017-08-02js提交后台请求的方式
  • 2017-05-11微信小程序 本地数据存储实例详解
  • 2017-05-11jQuery图片轮播功能实例代码
  • 2017-05-11利用angularjs1.4制作的简易滑动门效果
  • 2017-05-11JS中from 表单序列化提交的代码
  • 2017-05-11Angular.js跨controller实现参数传递的两种方法
  • 2017-05-11js仿搜狐视频记录片列表展示效果
  • 2017-05-11win系统下nodejs环境安装配置
  • 2017-08-19js显示当前系统时间并且显示星期几
  • 2017-05-11微信小程序 http请求封装详解及实例代码

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • 在点击div中的p时,如何阻止事件冒泡
    • 一篇文章搞定JavaScript类型转换(面试常见)
    • 微信小程序 this和that详解及简单实例
    • 利用jquery禁止外层滚动条的滚动
    • Bootstrap进度条与AJAX后端数据传递结合使用实例详解
    • Bootstrap table 定制提示语的加载过程
    • 最常见和最有用的字符串相关的方法详解
    • JavaScript定时器制作弹窗小广告
    • VueJs路由跳转——vue-router的使用详解
    • 深入理解Javascript箭头函数中的this

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有