for 

一般用于已知循环次数

var num:number = 5;
var i:number;
var factorial = 1; for(i = num;i>=1;i--) {
factorial *= i;
}
console.log(factorial)

for...in...

一般用于循环对象

let keyValue:string;
let objectList:object = {
name: '小白狼',
age:'27',
gender: '女'
}
for(let keyValue in objectList){
console.log(keyValue + ':' + objectList[keyValue])
}

打印结果
name:小白狼
age:27
gender:女

  for...of...

允许你遍历 Arrays(数组), Strings(字符串), Maps(映射), Sets(集合)等可迭代的数据结构等
let someArray = [1, "string", false];

for (let entry of someArray) {
console.log(entry); // 1, "string", false
}

while

一般用于未知循环次数

var num = 5;
var factorial = 1;
while (num >= 1) {
factorial = factorial * num;
num--;
}
console.log("5 的阶乘为:" + factorial);

every

有一个false就返回false

var arr1 :Array<number>= [1, 2, 3, 4, 5, 6];
console.log( arr1.every( function( item, index, array ){
console.log(item);
return item > 3;
})); 打印结果
1
false

some

有一个true ,则返回true

var arr1 :Array<number>= [1, 2, 3, 4, 5, 6];
console.log( arr1.some( function( item, index, array ){
console.log(item);
return item > 3;
})); 打印结果
1
2
3
4
true

map

var arr = [ 1, 2, 3, 4, 5, 6 ];
console.log( arr.map( function( item, index, array ){
console.log(item);
return item > 3;
})); 打印出来的结果是:1,2,3,4,5,6 函数返回结果: [false, false, false, true, true, true]

filter

同样返回一个新的数组,但是返回的是符合条件的数组项,同样不会跳出循环

var arr = [ 1, 2, 3, 4, 5, 6 ];
console.log( arr.filter( function( item, index, array ){
console.log(item);
return item > 3;
})); 打印的结果为1,2,3,4,5,6 函数返回结果为[4,5,6]

ts(typescript)讲解for , for...in..., for...of..., while, every, some, map, filter的更多相关文章

  1. 使用TypeScript拓展你自己的VS Code!

    0x00 前言 在前几天的美国纽约,微软举行了Connect(); //2015大会.通过这次大会,我们可以很高兴的看到微软的确变得更加开放也更加务实了.当然,会上放出了不少新产品和新功能,其中就包括 ...

  2. 分享:使用 TypeScript 编写的 JavaScript 游戏代码

    <上篇博客>我写出了我一直期望的 JavaScript 大型程序的开发模式,以及 TS(TypeScript) 的一些优势.博客完成之后,我又花了一天时间试用 TS,用它来重构之前编写的一 ...

  3. TypeScript入门

    博客园首发,转载请注明出处,多谢支持.http://www.cnblogs.com/xuema/ 一.TypeScript TypeScript是一种由微软开发的自由和开源的编程语言.它是JavaSc ...

  4. 构建纯TypeScript应用

    构建纯TypeScript应用 现在只有命令行应用的例子. 前言 现在,应用开发的趋势是命令行接口应用和Web应用. node.js 和 typescript的崛起所以,这里讨论如何创建纯的TypeS ...

  5. 分享:使用 TypeScript 编写的游戏代码

    <上篇博客>我写出了我一直期望的 JavaScript 大型程序的开发模式,以及 TS(TypeScript) 的一些优势.博客完成之后,我又花了一天时间试用 TS,用它来重构之前编写的一 ...

  6. 给JS包写TypeScript用的类型申明文件

    TS (TypeScript)区别于JS (JavaScript)一个最大的不同是TS增加了类型.当一些TS代码要使用JS包的时候,最好这些JS包都有类型介绍,比如这个变量是什么类型,那个函数参数的什 ...

  7. TypeScript的概要和简介

    安装 Typescript的基本介绍可以自行百度 centos虚拟机中可以完整的体验, virtualbox安装开发版本,选择开发工具项,否则增强功能无法安装[提示kernel 头文件缺失,yum安装 ...

  8. 1.初步认识TypeScript

    简介:typescript是C#之父主导的一门语言,本质上是向Javascript语言添加了可选的静态类型和基于面向对象的诸多特性.相当于javascript的超集,其包含es6.由于是和C#之父创造 ...

  9. 使用TypeScript拓展你自己的VSCode

    转自:http://www.iplaysoft.com/brackets.html使用TypeScript拓展你自己的VSCode! 0x00 前言在前几天的美国纽约,微软举行了Connect(); ...

  10. 初次在Vue项目使用TypeScript,需要做什么

    前言 总所周知,Vue新版本3.0 使用 TypeScript 开发,让本来就很火的 TypeScript 受到更多人的关注.虽然 TypeScript 在近几年才火,但其实它诞生于2012年10月, ...

随机推荐

  1. CKeditor页面公式不显示

    <script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax. ...

  2. 微信小程序防止多次点击提交的方法

    Page({ data: { lock: false }, //表单提交 submit(){ let that = this; let {lock} = that.data; if(!lock){ t ...

  3. Nextcloud的一些错误提示

    Nextcloud的一些错误提示 PHP 内存限制低于建议值 512MB 您可以通过以下步骤增加PHP内存限制: 打开php.ini文件 在终端中输入以下命令打开php.ini文件: bash sud ...

  4. 如何设置QGraphicsItem线宽不随QGraphicsView缩放而变小或变大

    很简单,只需要重写一下Item中的paint()方法 void my_line_item::paint(QPainter *painter, const QStyleOptionGraphicsIte ...

  5. rotate matrix

  6. VS 生成事件 xcopy 报错的解决方法

    出现这种情况有可能原因有2种可能: 1.目标文件夹设为只读:此时报错:MSB3073 代码4 ,输出显示:访问遭到拒绝. 解决:去掉文件夹只读属性. 2.缺少环境变量:报错为::MSB3073 代码9 ...

  7. 对NAN的认识

    NaN是个特殊的数值,它与任何值都不相等,包括它自己,NaN==NaN和NaN===NaN都是false,如果想测试某个数字是否为NaN,可以使用内置的函数isNaN(),如果是NaN则返回true, ...

  8. Mac 压缩软件Keka

    ​ mac 的压缩软件Keka,相对比较好用的一款压缩软件 Keka - the macOS file archiver 点击下载 安装就好. ​编辑 支持可创建的压缩文件格式,和可解压缩的文件格式列 ...

  9. XXE漏洞初步练手

    0x00:XXE定义 xml外部实体注入被我们称为XXE.因为实体可以通过预定义在文档中被调用,而实体的标识符又可以访问本地或者远程内容,当允许引用外部实体时,攻击者便可以构造恶意内容来达到攻击.

  10. Django Rest Framework中文文档:Serializer relations

    这是对DRF官方文档:Serializer relations的翻译,根据个人的理解对内容做了些补充.修改和整理. 一,django模型间的关系 在我们对数据进行建模时,最重要的一点就是根据功能需求分 ...