ts基础(1)
// let num:number = 12;
// let boo:boolean = true;
// let str:string = "adfd";
// str = 'asdf';
// str = `
// <h1>${num*3+3}</h1>
// `;
// alert(str); // console.info(str.indexOf("h"));
// console.info(parseFloat("123.4343abc"))
// let num2 = 20;
// console.info(num2);
let arr:(number|string)[] = [1,2,3,"dfsdf"];
arr.push(2); let arr2 :Array<number> = [1,2,4];
arr2.push(222);
console.log(arr2); enum StudentType{
班长=101,学委=201,组长,学员
} let stuType:StudentType = 201; if(stuType == StudentType.班长){
console.info("班长来了")
}else if(stuType == StudentType.学委){
console.info("学委来了")
} let fun:Function = ()=>{ }
let obj:Date = new Date(); class Student {
public id:number;
public name:string;
/**
* 初始化学生对象
* @param id 学生编号
* @param name 学生名称
*/
constructor(id:number,name:string){
this.id = id;
this.name = name;
} public show(otherName:string):void{
console.info(`你好${otherName},我叫${this.name}`);
}
}
let stu:Student = new Student(1,"王五"); stu.show("李四") class Teacher {
constructor(protected id:number,protected name:string) {
}
public show(otherName: string): void {
console.info(`你好${otherName},我叫${this.name}`);
}
} let teacher:Teacher = new Teacher(12,"hehe");
teacher.show("bb"); class ManTeacher extends Teacher{
constructor(){
super(12,"ddsds");
console.info(123);
this.id=12;
}
}
let man:ManTeacher = new ManTeacher(); interface IBoy{
play():void;
eat():void;
sayHi(otherName:string):string;
} class GoodBoy extends ManTeacher implements IBoy {
play(): void {
console.info("玩游戏")
}
eat(): void {
console.log("吃饭")
}
sayHi(otherName: string): string {
return `你好${otherName} 我叫${this.name}`
}
} try {
new GoodBoy().play();
} catch (error) {
console.info(error);
} //接口的第二种写法 dataInterface
interface IGoods{
id:number;
name:string;
price:number;
} let goods1:IGoods = {id:1, name:"aaa",price:433 }; class Goods {
id: number;
name: string;
price: number;
hello:number;
constructor( ) {
this.id = 1;
this.name="wangwu";
this.price=222;
this.hello=333;
}
}
let g2:IGoods = new Goods();
ToDolist示例
//let template:string=``;
class ListItem{
constructor(public title:string,private state:boolean=false){
this.rander();
}
public domHtml:JQuery=$();
public rander(){
let dom = $(`<li><span >${this.title}</span><span class="btnDone">完成</span></li>`);
dom.find(".btnDone").click(()=>{
this.state = true;
this.domHtml.find("span:first").addClass("deleteLine");
});
this.domHtml = dom;
}
}
class ItemManager{
private static list: ListItem[] = [];
constructor(){
}
public add(){
var stu = new ListItem($("#txt1").val() as string);
ItemManager.list.push(stu)
$("#todoList").append(stu.domHtml);
}
}
let manager:ItemManager = new ItemManager();
$(function(){
$("button").click(manager.add);
})
安装typescript cnpm install -g typescript --save
安装jQuery cnpm install jquery --save
监视文件 tsc -w 文件名
ts基础(1)的更多相关文章
- TS基础应用 & Hook中的TS
说在前面 本文难度偏中下,涉及到的点大多为如何在项目中合理应用ts,小部分会涉及一些原理,受众面较广,有无TS基础均可放心食用. **>>>> 阅完本文,您可能会收获到< ...
- TS基础笔记
TS优势 更好的错误的提示,开发中及时发现问题:编辑器语法提示更完善:类型声明可以看出数据结构的语义,可读性更好; TS环境搭建 1.安装node;2.npm install typescript@3 ...
- ts --基础类型
声明js的基本类型1.数字let a: number = 2; 2.字符串let aa: string = "22" 3.数组 (1) 数组元素: let b: number[] ...
- TS 基础数据类型
1.基础数据类型 Boolean布尔值 Number数字 String字符串 Array数组 Tuple元组 Enum枚举 Any void Boolean布尔值:true/fals ...
- Ts基础
//typeof 用来判断变量类型 var s: string = 'egret'; var isString: boolean = typeof s === 'string'; console.lo ...
- TS学习随笔(一)->安装和基本数据类型
去年学过一段时间的TS,但由于在工作中不常用.就生疏了,最近项目要求用TS,那我就再回去搞搞TS,写一篇记录一下自己学习TS的进度以及TS知识点 首先,关于TS的定义我就不在这描述了,想看百度一下你就 ...
- TS学习
随着vue3.0的即将到来,是时候学习一下TS了 简介:TypeScript是一种由微软开发的自由和开源的编程语言.它是JavaScript的一个超集,而且本质上向这个语言添加了可选的静态类型和基于类 ...
- create-react-app的TS支持以及css模块化
开始: 利用官方脚手架,搭建react工程.参考:https://react.docschina.org/docs/create-a-new-react-app.html. 过程: 1.暴露webpa ...
- (二) 从Angular1到Angular2需要的预备知识
1. TypeScript语法与ES6新特性 写惯了jQ的话突然从ES5跳到ES6,又是个变形的ES6(TypeScript),学习成本确实不低.不过笔者也是从ng1直接上手ng2,对与很多新特性的积 ...
随机推荐
- sqlplus 登录数据库
sqlplus pams/pamscncc@ORCLMIS
- .net中的各种委托(Delegate、Action、Func)
1.Delegate,委托的鼻祖 protected delegate int ClassDelegate(int x, int y);//定义委托类型及参数 static void Main(str ...
- Hyper Text Transfer Protocol(超文本传输协议)
HTTP简介 HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的传送 ...
- 没人看系列-----html随笔
<!DOCTYPE> 目录 没人看系列-----html/css详解 前言 不多说这段时间写了好多好多前端的东西,以至于自己重新返回看了一遍前端的所有技术.故此做个总结,准备学东西的请绕行 ...
- MVC-AOP思想-Filter 三种注册方式
在ASP.NET MVC框架中,为我们提供了四种类型的Filter类型包括:IAuthorizationFilter.IActionFilter.IResultFilter.IExceptionFil ...
- DDGScreenShot--iOS 图片裁剪,切圆角,加边框,你还用cornerRadius,还有更高级的用法
写在前面 我们肯定做过这样的需求,给一个图片切圆角, 当然我们大多采用简单粗暴的方法 myIcon.layer.cornerRadius = 16.5 myIcon.layer.masksToBoun ...
- golang自定义路由控制实现(一)
由于本人之前一直是Java Coder,在Java web开发中其实大家都很依赖框架,所以当在学习Golang的时候,自己便想着在Go开发中脱离框架,自己动手造框架来练习.通过学习借鉴Java ...
- Linux中mongodb定时远程备份
下载mongodb https://www.cnblogs.com/tartis/p/5291580.html mongodb定时备份文档 虚拟机报错要改BIOS 虚拟技术开启 进入root账户 s ...
- Proxy SwitchyOmega配合Shawdowsocks使用的配置
国内环境如果想使用Shawdowsocks来FQ,几乎一定会装ProxyOmega来进行配合使用,简单讲讲ProxyOmega如何和Shawdowsocks进行协同. 准备 Google chrome ...
- javascript中!=、!==、==、===操作符总结
JavaScript 有两种比较方式:严格比较运算符和转换类型比较运算符. 在相等运算符中对应 === .!==和 ==.!=. 先举个栗子 var str = '1' var num0 = 0 va ...