第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

TypeScript入門

標(biāo)簽:
Html5 JavaScript CSS3

一、 TypeScript 介绍

  • Typescript是由微软开发的一款开源的编程语言
  • Typescript是Javascript的超集,遵循最新的ES5/ES6规范。TypeScript扩展了Javascript语法
  • TypeScript更像后端Java、C#这样的面向对象语言可以让JS开发大型企业应用
  • 谷歌也在大力支持TypeScript,谷歌的Angular2就是基于 TypeScript语法的
  • 最新的Vue、React也可以集成Typescript.

二、TypeScript安装和编译

安装

cnpm i typescript -g
tsc helloworld.ts

Vscode+TypeScript

tsc --init
{"outDir": "./js"}
Terminal - Run Task - 
tsc: watch - front/tsconfig.json

三、数据类型

布尔类型(boolean)

let married: boolean=false;

数字类型(number)

let age: number=10;

字符串类型(string)

let firstname: string='zfpx';

数组类型(array)

let arr2: number[]=[4,5,6];
let arr3: Array<number>=[7,8,9];

元组类型(tuple)

是数组类型中的一种

let fullname: [string,string]=['zhang','san'];

枚举类型(enum)

事先考虑某一个变量的所有的可能的值,尽量用自然语言中的单词表示它的每一个值
比如性别、月份、星期、颜色、单位、学历

js enum Gender{ GIRL, BOY } console.log(李雷是${Gender.BOY}); console.log(韩梅梅是${Gender.GIRL});
enum Week{ MONDAY=1, TUESDAY=2 } console.log(今天是星期${Week.MONDAY});

任意类型(any)

let root:any=document.getElementById('root');
root.style.color='red';

null 和 undefined

null 和 undefined 是其它类型的子类型,可以赋值给其它类型,如数字类型,此时,赋值后的类型会变成 null 或 undefined

let x: number;
x = 1; // 运行正确
x = undefined;    // 运行错误
x = null;    // 运行错误
let y: number | null | undefined;
y = 1; // 运行正确
y = undefined;    // 运行正确
y = null;    // 运行正确

void 类型

void表示没有任何类型,一般用于定义方法的时候方法没有返回值

function greeting(name:string):void {
    console.log('hello',name);
}
greeting('zfpx');

never类型

never是其它类型(null undefined)的子类型,代表不会出现的值

let x: never;
x = (()=>{ throw new Error('exception')})();

四、函数

函数的定义

function hello(name:string):void {
    console.log('hello',name);
}
hello('zfpx');

没有返回值

let hello2 = function (name:string):void {
    console.log('hello2',name);
}
hello('zfpx');
hello2('zfpx');

可选参数

在TS中函数的形参和实参必须一样,不一样就要配置可选参数,而且必须是最后一个参数

function print(name:string,age?:number):void {
    console.log(name,age);
}
print('zfpx');

默认参数

function ajax(url:string,method:string='GET') {
    console.log(url,method);
}
ajax('/users');

剩余参数

function sum(...numbers:number[]) {
    return numbers.reduce((val,item)=>val+=item,0);
}
console.log(sum(1,2,3));

函数重载

  • 在Java中的重载,指的是两个或者两个以上的同名函数,参数不一样
  • 在TypeScript中,表现为给同一个函数提供多个函数类型定义
let obj: any={};
function attr(val: string): void;
function attr(val: number): void;
function attr(val:any):void {
  if (typeof val === 'number') {
      obj.age=val;
  } else {
      obj.name=val;
  }
}
attr('zfpx');
attr(9);
attr(true);
console.log(obj);
點(diǎn)擊查看更多內(nèi)容
4人點(diǎn)贊

若覺得本文不錯(cuò),就分享一下吧!

評(píng)論

作者其他優(yōu)質(zhì)文章

正在加載中
感謝您的支持,我會(huì)繼續(xù)努力的~
掃碼打賞,你說多少就多少
贊賞金額會(huì)直接到老師賬戶
支付方式
打開微信掃一掃,即可進(jìn)行掃碼打賞哦
今天注冊(cè)有機(jī)會(huì)得

100積分直接送

付費(fèi)專欄免費(fèi)學(xué)

大額優(yōu)惠券免費(fèi)領(lǐng)

立即參與 放棄機(jī)會(huì)
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)

舉報(bào)

0/150
提交
取消