美文网首页技术类
Typescript ES6学习(1)

Typescript ES6学习(1)

作者: Simple_Learn | 来源:发表于2018-01-04 10:47 被阅读0次

1.声明变量使用let或者const

首先,const是对let的一个增强,它能阻止对一个变量再次赋值。const变量的内部状态是可修改的。

例如:const a ={a:"1",b:"2"}; a.a ="3"; 这样做,是允许的。

但是在typescript中,TypeScript允许你将对象的成员设置成只读的。

我们在浏览器控制台可以用如下代码打印出:

for(var i=0;i<10;i++){

           setTimeout(

                     function(){

                            console.log("每一次的值:",i);

                                },

                    i*100);

}

会打印出如下结果

每一次的值:10

这和我们预料的结果不一致,那我们修改一下代码:

一个通常的解决方法是使用立即执行的函数表达式(IIFE)来捕获每次迭代时i的值。

for (var i = 0; i < 10; i++) { 

                   (function(i) {

                        setTimeout(function() { console.log(i); }, 100 * i);

                   })(i);

}

得出结果如下:

或者可以使用闭包的方式:

for(var i=0;i<10;i++){

           setTimeout(

                        (function(i){

                                 console.log("每一次的值:",i);

                           })(i),

           i*100);

}

得出的结果如下:

那么如果使用let声明变量,那么如下:

当let声明出现在循环体里时拥有完全不同的行为。 不仅是在循环里引入了一个新的变量环境,而是针对每次迭代都会创建这样一个新作用域。

这就是let声明的块级作用域。

本次先到这,下次继续,如有错误,请指正,谢谢。

相关文章

  • TypeScript 学习笔记

    学习Typescript 之前 要搞清楚 javascript typescript es6 三者的关系ES6是什...

  • Typescript面试题

    1:什么是Typescript? Typescript是强类型的Javascript超集,支持ES6语法,支持面向...

  • Typescript ES6学习(1)

    1.声明变量使用let或者const 首先,const是对let的一个增强,它能阻止对一个变量再次赋值。const...

  • 二次封装antd-mobile组件库

    项目使用了typescript + less + react + antd-mobile 开发。 1.编译ES6、...

  • TypeScript的模块

    与ES6一样,TypeScript也引入了模块化的概念,TypeScript也可以使用ES6中的export、ex...

  • TypeScriptc常用点总结

    TypeScript TypeScript是基于ES6语法之上构建的一门新的语言,相比较于ES6最大的变化就是增加...

  • TypeScript入门

    慕课网@JoJozhai 老师 TypeScript入门课程分享 TypeScript入门 ES5,ES6,JS,...

  • TypeScript基础入门之装饰器(一)

    转发 TypeScript基础入门之装饰器(一) 介绍 随着TypeScript和ES6中Classes的引入,...

  • ts知识

    1、ES5、ES6是脚本语言规范,javascript是基于ES5规范的,typescript是基于ES6规范的。...

  • Crash React

    typescript syntax es6 syntax redux or mobx ecosystem of n...

网友评论

    本文标题:Typescript ES6学习(1)

    本文链接:https://www.haomeiwen.com/subject/luolnxtx.html