TypeScript 素描 - 函数
/*
函数和javaScript并没有太大差别,只是增加了额外的功能,使函数有
更为强大的功能而且更易用使用
*/ //现在支持函数的参数指定类型,在前面的博文中大家应该已经看到
//还可以指定函数的返回值
function fun7(x: number, y: number): number {
return x + y;
} let myadd = function (x: number, y: number): number { return x + y; }; /*可选参数与默认参数*/
function fun8(x?: number, y: number = 8): void { };
//一个可选参数,一个默认参数 都不传也没有关系
fun8(); /*剩余参数,在之前的代码中也有写到
用.,.来表达剩余的参数,但需要是数组类型
*/
function fun9(arg1: string, arg2: string, ...args: string[]) { };
fun9("1", "2", "3", "4", "5"); /*箭头函数/拉姆达表达式
用过的都知道它的酸爽,简单的语法不说.还可以消除JavaScript的this
问题,提起this就是噩梦,到现在也不知道 this到底是谁
*/
let fun10 = (x: number, y: number): number => {
return x + y;
} /**
* 函数的重载也是非常有趣,可以看到和C#中的完全不一样
* 前两个方法只是定义方法的签名, 最后一个是对前两个的
* 方法的处理,最后一个不算是方法 只是实现
*/ function pickCard(x: string): string
function pickCard(x: number): number
function pickCard(x): any {
if (typeof x == "string") {
return "string result";
}
if (typeof x == "number") {
return 1;
}
}
pickCard(1);
pickCard("1");
TypeScript 素描 - 函数的更多相关文章
- TypeScript 素描-基础类型
博文读自 TypeScript 官方文档而来,不具有学习性,仅是本人学习时记录以供日后翻阅 ,有学习TypeScript的朋友还请去看更为详细的官方文档 TypeScript官网文档中的基础类型, T ...
- TypeScript 中函数的理解?与 JavaScript 函数的区别?
一.是什么 函数是JavaScript 应用程序的基础,帮助我们实现抽象层.模拟类.信息隐藏和模块 在TypeScript 里,虽然已经支持类.命名空间和模块,但函数仍然是主要定义行为的方式,Type ...
- TypeScript Function(函数)
在JavaScript中,函数是构成任何应用程序的基础块.通过函数,你得以实现建立抽象层.模仿类.信息隐藏和模块化.在TypeScript中,虽然已经存在类和模块化,但是函数依旧在如何去"处 ...
- TypeScript 素描 - 模块
/* 其实前面一些都是废话,因为都和C#类似.从模块开始就需要深入的去理解了 文档反复声明了 内部模块现在称做 命令空间 外部模块称为 模块 模块在其自身的作用域里执行,而不是在全局作用域里,也就是说 ...
- TypeScript 素描 - 模块解析、声明合并
模块解析 模块解析有两种方式 相对方式 也就是以/或 ./或-/开头的,比如import jq from "/jq" 非相对方式 比如 import model from ...
- TypeScript入门-函数
▓▓▓▓▓▓ 大致介绍 TypeScript为JavaScript函数添加了额外的功能,让我们可以更容易地使用.TypeScript中的函数也包括JavaScript中最常见的两种函数 functio ...
- TypeScript 素描 - 模块、命名空间
/* 其实前面一些都是废话,因为都和C#类似.从模块开始就需要深入的去理解了 文档反复声明了 内部模块现在称做 命令空间 外部模块称为 模块 模块在其自身的作用域里执行,而不是在全局作用域里,也就是说 ...
- TypeScript 之 函数
https://m.runoob.com/manual/gitbook/TypeScript/_book/doc/handbook/Functions.html 为函数定义类型 为函数添加类型: fu ...
- typescript - 3.函数
(1)函数的定义 ## 函数声明法 // function run():string{ // return 'run'; // } //错误写法,返回类型错误 // function run():st ...
随机推荐
- CentOS7中安装Python3.5
1.下载 https://www.python.org/ftp/python/3.5.2/Python-3.5.2.tgz 2.上传到服务器 3. 安装相关依赖 yum install gcc ope ...
- maven常用插件集
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://mave ...
- View and Data API Tips: Hide elements in viewer completely
By Daniel Du With View and Data API, you can hide some elements in viewer by calling "viewer.hi ...
- Android 通过httppost上传文本文件到服务器。
/** * 往服务器上上传文本 比如log日志 * @param urlstr 请求的url * @param uploadFile log日志的路径 * /mnt/shell/emulated/0/ ...
- ipad和iphone的适配
关于xib或者storybord下iphone的横竖屏的适配以及ipad的适配 ios8出现了Size Classes,解决了各种屏幕适配的问题,他把屏幕的宽和高分别分成了三种,把屏幕总共分成了九种情 ...
- iOS开发 引用第三方库出现duplicate symbol时的处理方法
该篇文章是我自己从我的新浪博客上摘抄过来的, 原文链接为: http://blog.sina.com.cn/s/blog_dcc636350102wat5.html 在iOS开发中, 难免 ...
- AEAI WM V1.5.0 升级说明,开源工作管理系统
1.升级说明 本次AEAI WM升级内容主要是针对数通畅联推出AEAI ECP企业云联平台而升级的,其中对AEAI WM的各模块进行扩展,同时增加了移动门户版功能及为AEAI ECP提供数据服务接口. ...
- 信息系统实践手记5-CACHE设计一例
说明:信息系统实践手记系列是系笔者在平时研发中先后遇到的大小的问题,也许朴实和细微,但往往却是经常遇到的问题.笔者对其中比较典型的加以收集,描述,归纳和分享. 摘要:此文描述了笔者接触过的部分信息系统 ...
- JavaScript数组
声明: var mycars=new Array(3) 扩号中的3也可以不写.不写即不限定数组的容量,可以无限制的向数组内添加值. 赋值: mycars[0]="Saab" 和Ja ...
- Yii 开发微信 '您提交的数据无法被验证'
使用Yii开发微信时,出现 [error][yii\web\HttpException:] exception 'yii\web\BadRequestHttpException' with messa ...