TypeScript基础
一、变量类型
(1)number型:可以表示int、float、double同时也可表示8、16进制等
let num1: number = 0
let num2: number = 12.3
(2)string型:表示字符串
let str:string = "hello world!"
(3)boolean型
let fin:Boolean = true
(4)any型:可以跳过类型检测(不建议常用)
let a:any="hello world!"
a=12
a=ture
(5)union型:可以为number、string和boolean中的任一种
let u:number|string|Boolean = 0
(6)Object型:类似于Python中的字典,以键值对的形式存在
let P = {name:"Bob",age: 10}
console.log(P.name)
console.log(P['name'])
(7)数组型:两种定义方式
let name: Array<string>=["Bob","Jack"]
let age: number[] = [12,13]
console.log(name[0])
age[1]
二、判断结构
(1)if判断
let val:number = 2
if(val%2 === 0)
{
console.log(val+"是偶数")
}
else {
console.log(val+"是奇数")
}
(2)switch判断
let grade: string="A"
switch (grade){
case 'A':{
console.log("优秀")
break
}
case 'B':{
console.log("良")
break
}
default:{
console.log("unkown")
break
}
}
三、循环结构
For循环
let names: string[] = ["Bob", "Jack"]
for (const i in names)
{
console.log(i)
}
for (const name of names)
{
console.log(name)
}
四、函数定义
(1)无返回值
let value: string ="Bob"
function sayHello(val1:string):void{
console.log("你好"+val1)
}
sayHello(value)
(2)有返回值
function add(val1:number,val2:number):number{
let sum:number =val1+val2
return sum
}
let result=add(1,2)
console.log(""+result)
(3)箭头函数
let dec = (val1:number,val2:number)=>{
let res:number = val1-val2
return res
}
(4)可选参数
function sayHi(val?:string):void{
val = val? val:"Bob"
console.log("你好"+val)
}
sayHi("Jack")
sayHi()
(5)默认参数
function saygoodbye(val:string ="陌生人"):void{
console.log("再见"+val)
}
saygoodbye("Jenne")
saygoodbye()
五、面向对象特性(interface enum class)
(1)简单实例
enum Msg{
HI="Hi",
HELLO="Hello"
}
interface A{
say(msg:Msg):void
}
class B implements A{
say(msg:Msg):void{
console.log(msg+" I am B")
}
}
let aa:A=new B()
aa.say(Msg.HI)
(2)复杂实例
class Rectangle{
private width: number
private heigth: number
constructor(width:number,heigth:number) {
this.width=width
this.heigth=heigth
}
public getarea():number{
return this.width*this.heigth
}
}
class Square extends Rectangle{
constructor(side:number) {
super(side,side)
}
}
let s=new Square(11)
s.getarea()