ts檔案
1.宣告
宣告標識 + 變數名 + ':' + 宣告型別 = 值
var a:number = 56; // 數字型別(C => int a = 5;)
enum REN{nan='男人',nv='女人',cen='中性人'} // 列舉型別
2.型別
- undefined
- number: 數值型別;(可以是小數)
- string : 字串型別;
- boolean: 布爾型別;(只有true,false => 1不能像js表示true)
- tuple : 元祖型別;(可以賦多種型別的陣列,但又不同于js,需要<>宣告 let arr1 : [string,number])
- Array<...> : 陣列型別;
let arr1:number[ ] // 宣告一個數值型別的陣列
let arr3:Array<string> = ['jack','tomy','gogo'] // 宣告一個字串型別的陣列
let arr3:Array<string> = new Array('jack','tomy胖','gogo') // 宣告一個字串型別的陣列
- null:空型別,
- any: 任意型別,一個牛X的型別;
- void:空型別,用于函式回傳;
- enum:列舉型別; (enum REN{ nan , nv ,yao} console.log(REN.yao))
3.函式(不return 宣告void)
①.回傳可多種型別
function searchXiaoJieJie(age:number):string/void{
return '找到了'+age+'歲的小姐姐'
}
var age:number = 18
var result:string = searchXiaoJieJie(age)
console.log(result)
②.可選引數的函式 (?)
function searchXiaoJieJie2(age:number,stature?:string):string{
if(stature !=undefined){
yy = yy + stature
}
}
③.有默認引數的函式
function searchXiaoJieJie2(age:number=18,stature:string='大長腿'):string{
let yy:string = ''
yy = '找到了'+age+'歲'
if(stature !=undefined){
yy = yy + stature
}
return yy+'的小姐姐'
}
④.有剩余引數的函式
function searchXiaoJieJie3(...xuqiu:string[]):string{
let yy:string = '找到了'
for (let i =0;i<xuqiu.length;i++){
yy = yy + xuqiu[i]
if(i<xuqiu.length){
yy=yy+'、'
}
}
yy=yy+'的小姐姐'
return yy
}
<br /><br />
4.日期
let d:Date = new Date()
let d:Date = new Date(1000)
console.log(d) //1970-01-01T00:00:01.000Z
let d1:Date = new Date('2018/09/06 05:30:00')
let d2:Date = new Date('2018-09-06 05:30:00')
let d3:Date = new Date('2018-09-06T05:30:00')
console.log(d1)
console.log(d2)
console.log(d3)
let d:Date = new Date(year,month,day,hours,minutes,seconds,ms);
5.正則
//建構式法
let reg1:RegExp = new RegExp("jspang") //表示字串規則里含有jspang
console.log(reg1)
let reg2:RegExp = new RegExp("jspang",'gi')
console.log(reg2)
//字面量法
let reg3:RegExp = /jspang/
let reg4:RegExp = /jspang/gi
6.類
關鍵字:class(標識)、extends(繼承)、constructor(建構式)、super()(繼承屬性)
類里面的修飾符
// public:己,子,外
// protected:己,子
// private:己
// 屬性不加修飾符,默認是公有
https://blog.csdn.net/u010856177/article/details/81089433
public name: string //屬性 public關鍵詞可省略,不暴露出去
constructor(name: string) { //建構式 實體化觸發的方法
this.name = name;
}
TS趨勢:
- 靜態型別和面向物件
- 應用程式
- JS超集 類sass和css
- 跨平臺且開源
- 開源引入js流行庫
..
在線編譯
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/58562.html
標籤:JavaScript
下一篇:向強大的SVG邁進
