// 下载
cnpm i -g typescript
//查看版本号
tsc -v
//下载json文件 配置
tsc --init
// 跑起来 让他编译成普通代码
tsc -w
- json 文件的compilerOptions对象中 将ts代码编译成js代码放到js文件里去
"outDir": "./js",
//定义了这个变量为字符串类型
let nickname:string = 'Simba'
//之后赋值不能给除string以外的类型
//如果把string换成any 就是所有的类型
// nickname = 10 不行
// 传入的参数都要是数字类型 return出一个数组
function add(a:number,b:number):number{
return a+b
}
//推断类型
let ab = add(1,2)
// add return的是一个数字类型 ab就为数字类型 ab不能被复其他值
// 如果对ab再进行赋值不行 ab = 'aa' 不行
//定义的是一个数字类型的数组 数组里面只能出现数字
let arr:number[] = [1,2,3]
//写法二
let arr1:Array<object> = [{id:10},{id:11}]
// arr.push('ss') 不行 不能往里面push字符串 只能push对象
//枚举 如果不赋值默认的是 0,1,2
enum DOME_TYPE {
DEV=9,
TEXT=10
}
let bc:DOME_TYPE = DOME_TYPE.TEXT
//加void就是无返回值 但是不写也是默认没有返回值
function calc(num:DOME_TYPE){
switch (num) {
case DOME_TYPE.DEV:
return 9
case DOME_TYPE.TEXT:
return '10'
}
}
// 函数返回的是数字或者字符串类型
let hh:string | number = calc(10)
//接口
//VueOption 接口名
// el需要时字符串类型的
// data为一个方法并且return了一个对象
interface VueOption {
el:string,
data():object
}
function Vue(option:VueOption){
}
Vue({
el:'#app',
data() {
return {
}
},
})