typescript之初学习
ts的优势:
支持ES6规范
强大的IDE支持(类型检测、语法提示、重构等)
Angular的开发语言
ts的新特性:
一、字符串
1、多行字符串,使用反引号``
2、字符串模板,使用表达式传入变量和方法。例如`dadad${name}dsfdsf`,同样需要反引号。这里可以用于自己开发模板数据绑定模块
3、自动拆分字符串
function test(template, name, age){
console.log(template);
console.log(name);
console.log(age);
} var myname = "zhai"; var getAge = function(){
return 12;
}; test.`hello my name is ${myname}, i'm ${getAge()}`;
二、参数新特性:
1、参数类型:声明数据类型,显示声明和隐式声明 any可以任何类型。变量和方法的后面
2、默认参数:主要是方法的默认参数 test(b: string = '23'){...}
3、可选参数: function test(c?: string){ ... }
三、函数新特性:
1、Rest and Spread操作符:用来声明任意数量操作符。 test(...arg){...}
2、generator函数:控制函数的执行过程,手动暂停和恢复代码的执行
3、destructuring析构表达式:通过表达式将对象或数组拆解成任意数量的变量。解构
四、表达式与循环:
1、箭头表达式:用来声明匿名函数,消除传统匿名函数的this指针问题
2、for of循环:可以break出循环
五、面向对象特性:
1、类class:用class关键字声明一个类、类的构造函数、类的继承extends
2、泛型generic:集合的类型Array<Person>
3、接口interface:建立某种代码约定
4、注解annotation:注解为程序的元素(类、变量、方法)加上更明了的说明,这些说明信息与程序的业务逻辑无关,而是供指定的工具或框架使用的。
5、类型定义文件*.d.ts:类型定义文件用来帮助开发者在ts开发中使用已有的js库,例如jq
typescript之初学习的更多相关文章
- clisp, scheme 和 clojure 初学习
clisp, scheme和clojure 初学习 1 clojure "clojure绝对会成为你的编程工具箱里的终极武器" "其他语言可能只是工具,但 Clojure ...
- c# window服务-初学习
window服务-初学习 一.工具: VS2015+NET Framework4.5. 二.操作: 1.新建windows服务的项目: 2.修改windows服务相关内容: 3.预览windows服务 ...
- Python初学习:简单的练习题
Python初学习 一些见到那的练习题: 初级难度 设计一重量转换器,输入以g为单位的数字后,返回换算结果以Kg为单位的结果 中级难度 设计一个求直角三角形斜边长的函数,(以两个直角边为参数,求最长边 ...
- TypeScript 入门教程学习笔记
TypeScript 入门教程学习笔记 1. 数据类型定义 类型 实例 说明 Number let num: number = 1; 基本类型 String let myName: string = ...
- typescript 的 polyfill 学习
我们知道typescript 是ES 超集.这意味着,不仅仅ES 的各种语法特性都会包括,还能保证通过typescript的编译服务可以很方便的转成ES向下兼容的版本,这得意于typescript强大 ...
- typescript基础类型(学习笔记非干货)
布尔值 Boolean let isDone:boolean=false; 数字 Number let decLiteral:number=6; let hexLiteral:number=0xf00 ...
- Swift初学习
距离swift发布10天了,也简单看了一下swift的语法,个人感觉相对于object-c很是简单明了.Swift的出现并不能说明iOS开发简单了很多,有可能会变得复杂,你需要学习两门编程语言,因为在 ...
- Jquery 插件初学习
参考文章:插件开发精品教程,让你的jQuery提升一个台阶 刚刚学了一下jquery的插件插件开发,写个demo记录.练习一下.毕竟,输出才是最好的学习. 这个也不过是最基础的一个插件写法,只是,自己 ...
- typescript 的 polyfill 学习1-Class 继承篇
Class 继承 js 是多范式的编程语言,同样也是支持面向对象编程的,类 是面向对象中是很重要的概念. 区别于传统的java,c#基于模板的类,js是基于原型的. 类继承一般是通过原型链的方式来实现 ...
随机推荐
- c++17 代码你能看懂吗?
------------------------------------------------------------------------------ #include <vector&g ...
- 结对-(first)
代码地址 https://github.com/CountZ3/bank.git 代码思想 允许进程动态地申请资源, 系统在每次实施资源分配之前,先计算资源分配的安全性, 若此次资源分配安全(即资源分 ...
- webstorm 2019.1 注册教程
注册教程:https://blog.csdn.net/hdp134793/article/details/81530472 IntelliJ IDEA 注册码获取网站
- SQLAlchemy使用介绍
SQLAlchemy is the Python SQL toolkit and Object Relational Mapper that gives application developers ...
- 抓取某网站信息时遇到的问题及解决 The character set provided in ContentType is invalid. Cannot read content as string using an invalid character set
var response = httpClient.SendAsync(requestMessage).Result; content = response.Content.ReadAsStringA ...
- samba服务器一次排错
在全局配置完,可用.配置区域配置的时候,添加一个共享的文件夹时, 使用testparm 命令去检查配置.发现path路径无法正确读出.在window上去访问,显示无法正常访问. 修改path的位置,放 ...
- eclipse集成testng插件
一.TestNG简介 TestNG是一个开源自动化测试框架,它受到JUnit和NUnit的启发,而引入了许多新的创新功能,如依赖测试,分组概念,使测试更强大,更容易做到. 它旨在涵盖所有类别的测试:单 ...
- MongoD 语法
MongoD 语法 1.常用 1 .查看有哪些库 > show dbs; admin 0.000GB config 0.000GB local 0.000GB 2 .当前库,只存在于内存中 &g ...
- UOJ#129. 【NOI2015】寿司晚宴 动态规划
原文链接www.cnblogs.com/zhouzhendong/p/UOJ129.html 题解 考虑把大于等于 $\sqrt n$ 的质数和小于 $\sqrt n$ 的分开考虑: 1. 小于等于 ...
- ScriptEngine执行复杂js报数组越界
import javax.script.Invocable; import javax.script.ScriptEngine; import javax.script.ScriptEngineMan ...