美文网首页web前端
TypeScript学习笔记之二基本数据类型

TypeScript学习笔记之二基本数据类型

作者: 摸着石头过河_崖边树 | 来源:发表于2018-12-06 22:52 被阅读61次

一、使用环境

  • Mac 电脑
  • WebStorm
  • TypeScript3.x版本

二、需要了解的基本类型有哪些

数据类型有两种:
A、原始数据类型 (Primitive data types)

  • boolean 布尔值
  • number 数值
  • string 字符串
  • null 空值
  • undefined 未定义
  • Symbol ES6 中的新类型

B、非原始类型

  • 数组
  • Tuple 元祖
  • enum 枚举
  • never 永不存在的值的类型
  • void
  • any 任意类型
  • 联合类型
  • 函数类型
  • 对象类型

三、原始数据类型

3.1 布尔类型(boolean)
  let  isSuccess : boolean = true;   // 只有true/false

注意:使用构造函数 Boolean 创造的对象不是布尔值,返回一个Bool对象。

 let  boolObjcet : any = new Boolean(1);  //返回bool对象
3.2 数值类型(number)
var  pricecount : number = 3.04;
var  notANumber : number = NaN;
let hexLiteral: number = 0xf00d;
let binaryLiteral: number = 0b1010;
let octalLiteral: number = 0o744;

注意:所有数字都是浮点数

3.3 文本数据类型(string)
//字符串
let  personname : string = '小名';
//多行字符串  模板字符串
let  moreString: string = `Hello, my name is ${personname} I will be good ${isSuccess}`; 
 //其中`用来定义 ES6 中的模板字符 串,${expr} 用来在模板字符串中嵌入表达式。

注意:

  • 字符串可以使用双引号( ")或单引号(')表示;
  • 字符串模版使用(``),变量使用${变量名}
3.4 空类型 Null 和 Undefined 以及void

void 表示没有任何类型 ,没有函数返回值
undefined 类型的变量只能被赋值为 undefined
null 类型的变量只能被赋值为 null。
与 void 的区别是,undefined 和 null 是所有类型的子类型

 let  nul : null = null;
 let  defin : undefined = undefined;
 function message(mess : string) : void{}

但是有时候你可能会看到如下情况,是联合类型,稍后会讲解

let a : string | null | undefined  
3.5 Symbol ES6 中的新类型

symbol类型的值是通过Symbol构造函数创建的
特点一:可选的字符串key

const symbol = Symbol("key");  // 可选的字符串key

特点二:字符串一样,symbols也可以被用做对象属性的键。

class ClassSymbol {
[symbol](){
    return "344";    // 
   }
}

特点三:Symbols是不可改变且唯一的。

let sym2 = Symbol("key");
let sym3 = Symbol("key");
sym2 === sym3; // false, symbols是唯一的

特点四:可以与计算出的属性名声明相结合来声明对象的属性和类成员。

 let  cc = new ClassSymbol();
console.log(cc[symbol]());

symbol成为了一种新的原生类型,就像number和string一样

特点五:内置的symbols表示语言内部的行为

  Symbol.hasInstance方法,会被instanceof运算符调用。
   构造器对象用来识别一个对象是否是其实例。
  Symbol.isConcatSpreadable布尔值,
  表示当在一个对象上调用Array.prototype.concat时,这个对象的数组元素是否可展开。
  Symbol.iterator方法,被for-of语句调用。返回对象的默认迭代器。
  Symbol.match方法,被String.prototype.match调用。正则表达式用来匹配字符串。
  Symbol.replace方法,被String.prototype.replace调用。正则表达式用来替换字符串中匹配的子串。
  Symbol.search方法,被String.prototype.search调用。正则表达式返回被匹配部分在字符串中的索引。
  Symbol.species函数值,为一个构造函数。用来创建派生对象。
  Symbol.split方法,被String.prototype.split调用。正则表达式来用分割字符串。
  Symbol.toPrimitive方法,被ToPrimitive抽象操作调用。把对象转换为相应的原始值。
  Symbol.toStringTag方法,被内置方法Object.prototype.toString调用。返回创建对象时默认的字符串描述
  Symbol.unscopables对象,它自己拥有的属性会被with作用域排除在外。

     如需了解更多知识

TypeScript学习笔记之五类(Class)
TypeScript学习笔记之四接口(Inferfaces)
TypeScript学习笔记之三非原始数据类型
TypeScript学习笔记之二基本数据类型
TypeScript学习笔记之一初见TypeScript

相关文章

  • Typescript 学习笔记

    TypeScript 学习笔记 一、基本数据类型 基本数据类型与 JavaScript 一致,包含了 number...

  • Typescript 学习笔记六:接口

    目录: Typescript 学习笔记一:介绍、安装、编译 Typescript 学习笔记二:数据类型 Types...

  • TypeScript学习笔记之二基本数据类型

    一、使用环境 Mac 电脑 WebStorm TypeScript3.x版本 二、需要了解的基本类型有哪些 数据类...

  • typescript基本特性了解

    本文主要给大家介绍typescript的基本特性。 1、typeScript中的数据类型 typescript中为...

  • Typescript入门之:接口

    typescript基本使用笔记 安装typescript npm install -g typescript ...

  • Typescript

    TypeScript(TS)部分 TypeScript学习笔记

  • typescript入门学习

    typescript入门学习 一. 数据类型 ​ typescript中为了使编写的代码更规范,更有利于维护,...

  • 一天学会MySQL数据库

    MySQL学习笔记 登录登出 基本语法 数据类型 数值 : INT , FLOAT , DOUBLE .. ;日期...

  • TypeScriptz学习笔记

    TypeScriptz学习笔记 标签(空格分隔): TypeScript 撩课学院 安装TypeScript Ty...

  • Typescript

    学习笔记 菜鸟教程 《菜鸟教程》-TypeScript简介 《菜鸟教程》-TypeScript安装 《菜鸟教程》-...

网友评论

    本文标题:TypeScript学习笔记之二基本数据类型

    本文链接:https://www.haomeiwen.com/subject/ikpacqtx.html