Объявите массив в TypeScript

У меня проблемы с объявлением или использованием логического массива в Typescript, но я не уверен, что это неправильно. Я получаюundefined ошибка. Я должен использовать синтаксис JavaScript или объявить новый объект Array?

Какой из них является правильным способом создания массива?

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

Как бы я инициализировал все значения, чтобы быть ложным?

Как бы я получить доступ к значениям, могу ли я получить доступ к ним, как,columns[i] = true;..?

 Girdhari Agrawal10 авг. 2016 г., 15:47
правильный синтаксис: let array: boolean []; и да, вы можете получить к нему доступ, как вы используете

Ответы на вопрос(3)

Решение Вопроса

Вот различные способы, которыми вы можете создать массив логических значений в машинописи:

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();

Вы можете получить к ним доступ, используя индекс:

console.log(arr[5]);

и вы добавляете элементы, используя push:

arr.push(true);

При создании массива вы можете указать начальные значения:

let arr1: boolean[] = [true, false];
let arr2: boolean[] = new Array(true, false);
 Raphaël Gomès27 сент. 2017 г., 10:00
Есть ли веская причина иметь так много разных способов объявления массива? arr5 и arr6 кажутся мне особенно неприятными.
 Nitzan Tomer27 сент. 2017 г., 15:37
@ RaphaëlGomès Это именно то, что такое JavaScript. Проверьте этот вопрос относительно arr5 и arr6:stackoverflow.com/questions/8205691/...

вот как вы можете создать массив логических значений в TS и инициализировать его значением false:

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

или другой подход может быть:

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

Вы можете указать тип после двоеточия, который в данном случае является логическим массивом

Определенный тип массива в машинописи

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

Ваш ответ на вопрос