ECMAScript6
来源:互联网 发布:国外免费linux服务器 编辑:程序博客网 时间:2024/04/30 18:24
开发环境
借助React的脚本转换器进行学习ES6
如何引入脚本转换器:传送门
部署后的开发环境
<script src="../js/browser.min.js"></script><script type="text/babel"> //这里是我们的ES6代码</script>
变量的声明方式
1.var
2.const
3.let(ES6新增的命令,用来声明变量)
变量的作用域
1.函数作用域,
function(){}
2.块级作用域,{}
<script type="text/babel"> //这里是我们的ES6代码 //var声明的变量, 具有函数作用域 var arr = [1, 2, 3]; for (var i = 0; i < arr.length; i++) {} console.log(arr[i]);//undefined</script>
<script type="text/babel"> //let声明的变量, 具有块级作用域,for循环使用let命令就很合适 for (let j = 0; j < 10; j++) {} console.log(j);//error</script>
为了避免出现变量污染,解决方案:
立即执行匿名函数(IIFE, immediately-invoked function Expression)
<script type="text/babel"> var a = 100; window.a = 100; var a = 200; window.a = 200; (function () { var a = 100; }()); //而使用ES6中的let命令就可以很好的解决变量污染问题 { let a = 100; }</script>
let声明的变量, 在同一作用域下, 不允许重名
<script type="text/babel"> let a1 = 100; let a1 = 101; //报错,Duplicate declaration "a1",意思是重复声明变量a1</script>
let不像var那样会发生”变量提升”现象。
所以变量要在声明后使用,否则会报错
// var 的情况console.log(f); // 输出undefinedvar f = 2;// let 的情况console.log(kk); // 报错ReferenceErrorlet kk = 2;
0 0
- ECMAScript6
- ECMAScript6
- ECMAScript6
- ECMAScript6
- ECMAScript6
- ECMAScript6
- ECMAScript6
- ECMAScript6
- ECMAScript6笔记:ECMAScript6简介
- ECMAscript6 set
- ECMAscript6 map
- ECMAScript6 Promise
- ECMAScript6 async
- ECMAScript6/ES6
- ECMAScript6 Promise
- ECMAScript6 规范
- ECMAScript6 规范
- ECMAScript6入门
- jQuery通过AJAX快速批量提交表单数据
- iOS返回的JSON数据中的unicode 转换为中文
- python fabric 免密码输入执行任务 踩得坑
- ES6的新特性
- 启动自执行 CommandLineRunner
- ECMAScript6
- linux下修改/etc/profile文件
- 新年快乐动态PPT模板免费分享
- DVWA - File Inclusion (low, medium, high)
- kendo 正则表达式验证的 bug
- Not Hello World
- 打造优雅的PC环境软件篇
- PHP abstract与interface之间的区别
- 顶点着色器-经过的空间变换