繁体   English   中英

在 TypeScript 中声明一个数组

[英]Declare an array in TypeScript

我在 Typescript 中声明或使用布尔数组时遇到问题,不确定哪个是错误的。 我收到一个undefined的错误。 我应该使用 JavaScript 语法还是声明一个新的 Array 对象?

其中哪一种是创建数组的正确方法?

private columns = boolean[];
private columns = [];
private columns = new Array<boolean>();

我将如何将所有值初始化为假?

我将如何访问这些值,我可以像columns[i] = true; ..?

以下是在 typescript 中创建布尔数组的不同方法:

let arr1: boolean[] = [];
let arr2: boolean[] = new Array();
let arr3: boolean[] = Array();

let arr4: Array<boolean> = [];
let arr5: Array<boolean> = new Array();
let arr6: Array<boolean> = Array();

let arr7 = [] as boolean[];
let arr8 = new Array() as Array<boolean>;
let arr9 = Array() as boolean[];

let arr10 = <boolean[]>[];
let arr11 = <Array<boolean>> new Array();
let arr12 = <boolean[]> Array();

let arr13 = new Array<boolean>();
let arr14 = Array<boolean>();

您可以使用索引访问它们:

console.log(arr[5]);

然后使用 push 添加元素:

arr.push(true);

创建数组时,您可以提供初始值:

let arr1: boolean[] = [true, false];
let arr2: boolean[] = new Array(true, false);

这就是你如何在 TS 中创建一个布尔数组并用 false 初始化它:

var array: boolean[] = [false, false, false]

或另一种方法可以是:

var array2: Array<boolean> =[false, false, false] 

您可以在冒号后面指定类型,在这种情况下是布尔数组

TypeScript中声明类型化数组的几种方法是

const booleans: Array<boolean> = new Array<boolean>();
// OR, JS like type and initialization
const booleans: boolean[] = [];

// or, if you have values to initialize 
const booleans: Array<boolean> = [true, false, true];
// get a vaue from that array normally
const valFalse = booleans[1];

打字稿中特定类型的数组

export class RegisterFormComponent 
{
     genders = new Array<GenderType>();   // Use any array supports different kind objects

     loadGenders()
     {
        this.genders.push({name: "Male",isoCode: 1});
        this.genders.push({name: "FeMale",isoCode: 2});
     }
}

type GenderType = { name: string, isoCode: number };    // Specified format
let arr1: boolean[] = [];

console.log(arr1[1]);

arr1.push(true);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM