当前位置: 首页 > news >正文

做网站的是哪类公司百度账号登陆入口

做网站的是哪类公司,百度账号登陆入口,做装修那个网站好,深圳网络seo优化ts的常用类型前言安装ts常见类型原始类型 、数组、 any变量上的类型注解函数对象类型联合类型类型别名接口接口和类型别名的对比前言 typescript中为了使编写的代码更规范,更有利于维护,增加了类型校验,安装 安装 typescript npm i typescr…

ts的常用类型

  • 前言
  • 安装
  • ts常见类型
    • 原始类型 、数组、 any
    • 变量上的类型注解
    • 函数
    • 对象类型
    • 联合类型
    • 类型别名
    • 接口
      • 接口和类型别名的对比


前言

typescript中为了使编写的代码更规范,更有利于维护,增加了类型校验,

安装

安装 typescript
npm i typescript -g
运行
tsc hello.ts

ts常见类型

原始类型 、数组、 any

类型举例描述
string“Hello word”表示字符串
number42所有的数字,类型都是 number
booleantrue 和 false布尔值
Array①var arr:number[]=[11,22,33] ② var arr:Array=[11,22,33];数组
anylet obj: any = { x: 0 };当你不希望一个值导致类型检查错误的时候,就可以设置为 any

变量上的类型注解

当你使用 const、var 或 let 声明一个变量时,你可以选择性的添加一个类型注解,显式指定变量的类型

let myName: string = "Alice";

函数

参数类型注解(Parameter Type Annotations)

当你声明一个函数的时候,你可以在每个参数后面添加一个类型注解,声明函数可以接受什么类型的参数。参数类型注解跟在参数名字后面:

function greet(name: string) {console.log("Hello, " + name.toUpperCase() + "!!");//当参数有了类型注解的时候,TypeScript 便会检查函数的实参:
}

对象类型

function printCoord(pt: { x: number; y: number }) {console.log("The coordinate's x value is " + pt.x);console.log("The coordinate's y value is " + pt.y);
}
printCoord({ x: 3, y: 7 });

可选属性:对象类型可以指定一些甚至所有的属性为可选的,你只需要在属性名后添加一个 ? :

function printName(obj: { first: string; last?: string }) {console.log(obj.last.toUpperCase());//可能为undefined,所以要先判断下if (obj.last !== undefined) {// OKconsole.log(obj.last.toUpperCase());}
}
// Both OK
printName({ first: "Bob" });
printName({ first: "Alice", last: "Alisson" });

联合类型

基于已经存在的类型构建新的类型,现在把它们组合在一起。

function printId(id: number | string) {console.log("Your ID is: " + id);
}
// OK
printId(101);
// OK
printId("202");
// Error
printId({ myID: 22342 });
// Argument of type '{ myID: number; }' is not assignable to parameter of type 'string | number'.
// Type '{ myID: number; }' is not assignable to type 'number'.
// 因为定义的参数类型为数字或者字符串,对象不符合条件

注:必须对每个联合的成员都是有效的。举个例子,如果你有一个联合类型 string | number , 你不能使用只存在 string 上的方法:

function printId(id: number | string) {console.log(id.toUpperCase());// Property 'toUpperCase' does not exist on type 'string | number'.// Property 'toUpperCase' does not exist on type 'number'.//解决方法 用typeof 先判断一下类型,在执行方法
}

类型别名

顾名思义,一个可以指代任意类型的名字。

type Point = {x: number;y: number;
};// Exactly the same as the earlier example
function printCoord(pt: Point) {console.log("The coordinate's x value is " + pt.x);console.log("The coordinate's y value is " + pt.y);
}printCoord({ x: 100, y: 100 });

你可以使用类型别名给任意类型一个名字,举个例子,命名一个联合类型:

type ID = number | string;

接口

interface Point {x: number;y: number;
}function printCoord(pt: Point) {console.log("The coordinate's x value is " + pt.x);console.log("The coordinate's y value is " + pt.y);
}printCoord({ x: 100, y: 100 });

接口和类型别名的对比

  • 相同点: 都可以给对象指定类型
  • 不同点:
    • 接口:只能为对象指定类型
    • 类型别名:不仅可以为对象指定类型,实际上可以为唯衣类型指定别名
http://www.wangmingla.cn/news/486.html

相关文章:

  • 个人免费域名注册网站做百度推广的网络公司
  • 门户类网站前台免费seo营销优化软件下载
  • 网站诊断书怎么做百度旗下13个app
  • 日照建网站电商关键词查询工具
  • 互动网站建设自媒体seo是什么意思
  • 鲜花团购网站建设太原关键词优化报价
  • 陕西网站建设公司找哪家网络营销渠道建设方案
  • j2ee博客网站开发重庆排名seo公司
  • 明星做代言的购物网站0东莞seo关键词
  • 树莓派做网站服务器性能怎么样宁波网站推广大全
  • 威海哪有网站建设视频推广一条多少钱
  • 咖啡网站设计建设wordpress自助建站
  • 网站域名费用怎么做帐网站推广seo教程
  • 网络销售是做网站推广百度搜索排名推广
  • 如果一个网站没有备案网站底部友情链接
  • 个人音乐分享网站源码百度seo关键词排名优化软件
  • seo岗位seo推广方式是什么呢
  • 云盘网站如何做学历提升
  • 廊坊网站设计搜索排行
  • 商标可以做网站吗网站关键词优化的价格
  • 品牌网站建设搭建免费网上申请注册
  • 岷县网站建设地推平台
  • 成都定制网站建设深圳竞价排名网络推广
  • 嘉兴公司网站制作网页设计
  • 成人seo数据统计分析工具有哪些
  • 超大尺寸哔哩哔哩网站百度24小时客服电话136
  • wordpress面打开404百度seo优化教程免费
  • 厦门网站搜索优化企业网络推广网站
  • 多用户电商系统开发北海seo快速排名
  • 山西龙采网站建设合同seo诊断a5