TypeScript constructor signature 类型的变量赋值方式
看这段代码:
interface ArrayContaining {new (sample: string): any;
}
试图给一个类型为 ArrayContaining 的变量赋值,下列这样赋值行不通:
const a: ArrayContaining = () => 1;
遇到错误消息:
Type ‘() => number’ is not assignable to type ‘ArrayContaining’.
Type ‘() => number’ provides no match for the signature ‘new (sample: string): any’.
正确的做法:
class Jerry{constructor(private name:string){this.name = name;console.log('name: ', this.name);}
}const b: ArrayContaining = Jerry;const c:Jerry = new b('Tom');
最后的输出:
这里的 Jerry,相当于一个构造器,具有 constructor signature,故可以赋给类型为 ArrayContaing 的 变量 b.
换句话说,TypeScript 的 class 和 constructor 关键字,具有所谓的 constructor signature.
TypeScript constructor signature 类型的变量赋值方式相关推荐
- TypeScript学习笔记1:变量赋值及书写方式
TS 和 JS 相对比的优势 TypeScript的安装步骤.运行问题及代码的简单运行 TypeScript学习笔记1:变量赋值及书写方式 TypeScript学习笔记2:数据类型 文章目录 变量赋值 ...
- typescript利用接口类型声明变量_TypeScript入门指南(基础篇)
戳蓝字「前端技术优选」关注我们哦! 作者:慕晨同学 原文地址:https://github.com/USTB-musion/fee-skills/issues/19 写在前面 ts是拥有类型系统 ...
- python定义变量并赋值_Python 变量类型及变量赋值
在 Python 中,变量不一定占用内存变量.变量就像是对某一处内存的引用,可以通过变量访问到其所指向的内存中的值,并且可以让变量指向其他的内存.在 Python 中,变量不需要声明,但是使用变量之前 ...
- python变量赋值方式_python变量和变量赋值的几种形式
动态类型的语言 python是动态类型的语言,不需要声明变量的类型. 实际上,python中的变量仅仅只是用来保存一个数据对象的地址.无论是什么数据对象,在内存中创建好数据对象之后,都只是把它的地址保 ...
- python变量类型之间转换_【Python】Python 变量类型(变量赋值,数据类型,数据转换)...
目录 Python 变量类型 变量存储在内存中的值.这就意味着在创建变量时会在内存中开辟一个空间.基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中.因此,变量可以指定不同的数 ...
- python变量赋值方式_python中变量的命令规制及变量的赋值方式
文章结构: 一.python中变量的命名规则 二.变量赋值的三种方式 三.python的垃圾回收机制 一.Python中变量的命令规则 变量名只能包含字母.数字和下划线,且不能以数字开头: 变量名不能 ...
- 【Makefile由浅入深完全学习记录4】变量和不同的赋值方式
今天来学习Makefile中变量的不同的赋值方式!努力的意义就是让贫穷不再限制你的想象!加qq共同学习交流1126137994 1.概念 makefile中支持程序设计中变量的概念 makefile中 ...
- katalon:赋值方式
一.直接赋值 手机号输入框需要输入手机号"10012345678",直接赋值,直接填写手机号 //手机号码:直接赋值 WebUI.setText(findTestObject('a ...
- python变量类型之间转换_Python变量赋值类型转换
原博文 2018-01-22 22:05 − 1.Python定义变量 1 name = cross10 2 print('name=',name) 打印结果: name=cross10 2.Pyth ...
最新文章
- 库克踏春而来,小而美的 iPhone 全新配件问世
- mysql配置命令_MySQL基本配置命令总结
- 【Linux】Linux软件安装和定时任务
- [Python] L1-014. 简单题-PAT团体程序设计天梯赛GPLT
- rust能捏人不_吃鸡:捏脸系统上线后,玩家们都嗨了
- 无论PC还是Mac,都能畅快地使用移动硬盘
- jquery_ui_api中文
- DirectX Repair
- allennlp使用
- 【STM32F429的DSP教程】第13章 DSP快速计算函数-三角函数和平方根
- [入门] 探索FireMonkey的StyleBook皮肤控件的使用(附示例程序)
- mysql安装ecshop_ecshop图文安装过程详解
- IDEA如何新建一个source folder
- 今天是2012年8月14日
- 谷歌SEO专业术语指南
- Android修真传之工厂模式
- 寓教于乐!一款游戏让你成为 Vim 高手!
- mysql 合计 小计_用SQL实现统计报表中的小计与合计的方法详解
- Android如何配置init.rc中的开机启动进程(service)【转】
- Camera硬件结构组成(三)