簡體   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