基本类型javascript
一、boolean
java
let isDone: boolean = false;
二、number编程
let decLiteral: number = 6; //十进制 let hexLiteral: number = 0xf00d; //十六进制 let binaryLiteral: number = 0b1010; //二进制 let octalLiteral: number = 0o744; //八进制
三、string数组
可使用双引号("
)或单引号('
)表示字符串。spa
let name: string = "bob"; name = "smith";
还可使用模版字符串,它能够定义多行文本和内嵌表达式。 这种字符串是被反引号包围(`
),而且以${ expr }
这种形式嵌入表达式code
let name: string = `Gene`; let age: number = 37; let sentence: string = `Hello, my name is ${ name }. I'll be ${ age + 1 } years old next month.`;
等同于:blog
let sentence: string = "Hello, my name is " + name + ".\n\n" + "I'll be " + (age + 1) + " years old next month.";
四、数组索引
两种方式能够定义数组。 第一种,能够在元素类型后面接上[]
,表示由此类型元素组成的一个数组ip
let list: number[] = [1,2,3];
第二种方式是使用数组泛型,Array<元素类型> :字符串
let list: number[] = [1,2,3];
五、元组 Tuple
容许表示一个已知元素数量和类型的数组,各元素的类型没必要相同。好比你能够定义一对值分别为 string 和 number 类型的元组。
let x: [string, number]; // Initialize it x = ['hello', 10]; // OK // Initialize it incorrectly x = [10, 'hello']; // Error
当访问一个已知索引的元素,会获得正确的类型:
console.log(x[0].substr(1)); // OK console.log(x[1].substr(1)); // Error, 'number' does not have 'substr'
当访问一个越界的元素,会使用联合类型替代:
x[3] = 'world'; // OK, 字符串能够赋值给(string | number)类型 console.log(x[5].toString()); // OK, 'string' 和 'number' 都有 toString x[6] = true; // Error, 布尔不是(string | number)类型
六、enum 枚举
enum Color {Red, Green, Blue} let c: Color = Color.Green;
默认状况下,从0
开始为元素编号。 你也能够手动的指定成员的数值。 例如,咱们将上面的例子改为从1
开始编号:
enum Color {Red = 1, Green, Blue} let c: Color = Color.Green;
或者,所有都采用手动赋值:
enum Color {Red = 1, Green = 2, Blue = 4} let c: Color = Color.Green;
枚举类型提供的一个便利是你能够由枚举的值获得它的名字。
enum Color {Red = 1, Green, Blue} let colorName: string = Color[2]; alert(colorName); // 显示'Green'由于上面代码里它的值是2
七、any 任意值
有时候会想要为那些在编程阶段还不清楚类型的变量指定一个类型,咱们不但愿类型检查器对这些值进行检查而是直接让它们经过编译阶段的检查。 那么咱们可使用any
类型来标记这些变量。
let notSure: any = 4; notSure = "maybe a string instead"; notSure = false; // okay, definitely a boolean
当你只知道一部分数据的类型时,any
类型也是有用的。 好比,你有一个数组,它包含了不一样的类型的数据
let list: any[] = [1, true, "free"]; list[1] = 100;
八、空值
function warnUser(): void { alert("This is my warning message"); }
声明一个void
类型的变量没有什么大用,由于你只能为它赋予undefined
和null
let unusable: void = undefined;