热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

如何在TypeScript中初始化(声明)数组?

如何解决《如何在TypeScript中初始化(声明)数组?》经验,为你挑选了1个好方法。

我绝对是TypeScript的初学者.我想通过"for"循环在TypeScript中初始化一个数字数组,如下所示:

 public hours: number[];
 constructor() {
   for (let i: number = 1; i <25; i++) {
      this.hours[i] = i;
    }
  }

我收到一个错误:无法设置未定义的属性"1".请你帮助我好吗?



1> Nitzan Tomer..:

这一行:

public hours: number[];

不创建新数组,它只声明它.
如果您编译此代码:

class MyClass {
    public hours: number[];

    constructor() {
        for (let i: number = 1; i <25; i++) {
            this.hours[i] = i;
        }
    }
}

你得到:

var MyClass = (function () {
    function MyClass() {
        for (var i = 1; i <25; i++) {
            this.hours[i] = i;
        }
    }
    return MyClass;
}());

如您所见,this.hours未被分配.

所以你需要这样做:

constructor() {
    this.hours = [];

    for (let i: number = 1; i <25; i++) {
        this.hours[i] = i;
    }
}

要么:

public hours: number[] = [];


推荐阅读
author-avatar
mobiledu2502918317
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有