TypeScript学习笔记(一)


TypeScript

最新整理的笔记放到 oneNote 了

讲真除了几个新加的数据类型,学起来就感觉和学 es6 一样。。。。。。

安装与调试

//安装 ts 和 ts-node
npm install -D ts-node
npm install -D typescript
// 创建 tsdemo/.vscode/launch.json 文件
{
  "configurations": [
    {
      "name": "ts-node",
      "type": "node",
      "request": "launch",
      "program": "/user/local/bin/ts-node",
      "args": ["${relativeFile}"],
      "cwd": "${workspaceRoot}",
      "protocol": "inspector"
    }
  ]
  //然后就可以使用 vscode 的调试工具调试了
}
# 当然也可以不用调试工具
# 在首行写下边的命令,给文件添加执行权限
#!/usr/bin/env ts-node
chmod +x xxx.ts

数据类型

Number + String + Array + Boolean+ enum + Tuple + void + any + never + null + undefined

类型断言

(<string>someValue).length;
(someValue as string).length;
//使用 jsx 时只支持 as

类型转换

let a1: number = 123;
let b1: string = a.toString();

let a2: string = "123";
let b2: number = parseFloat(a2);

let a3: number = 123;
let b3: boolean = Boolean(a3);

let obj1 = { name: "muxue", age: 18 };
let string = JSON.stringify(obj);
let obj2 = JSON.parse(string);

变量声明

使用 letconst 代替 var

解构赋值和展开运算符

{
  let obj = {
    name: "muxue",
    age: 18,
    nation: "China",
  };
  //解构
  let { name, age, nation } = obj;
  console.log(name, age, nation);
}

{
  let arr = ["apple", "orange", "pear"];
  let [fruit1, fruit2, fruit3] = arr;
  console.log(fruit1, fruit2, fruit3);
}

{
  function sayHi({ name, age }: any) {
    console.log(`Hi, ${name}, ${age}`);
  }

  sayHi({ name: "muxue", age: 18 });
}

文章作者: 沐雪
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 沐雪 !
评论
 上一篇
TypeScript学习笔记(二) TypeScript学习笔记(二)
TypeScript 最新整理的笔记放到 oneNote 了 接口类似于低配版的类,类就是高配版的接口 接口接口就是描述一个对象必须有什么属性 interface Human { name: string; age: number
2018-10-02
下一篇 
vue基础知识总结(附实例) vue基础知识总结(附实例)
vue 基础知识部分构造器 实例化 vue 时,需传入一个选项对象,它可以包括 数据、模板、挂载元素、方法和生命周期钩子 属性与方法 每个 vue 实例都会代理其 data 对象里所有的属性 vue 实例暴露了一些有用的实例属性与方法,这
2018-09-21
  目录