从构造函数向数组添加对象

时间:2018-05-28 21:14:13

标签: javascript oop

我目前正在开发一款平台游戏,它将拥有许多不同的模块,可用作墙壁和平台。为了知道一个玩家是否已到达有障碍的点,我想循环遍历所有区块的数组。

我当然可以在创建它们之后将对象添加到数组中:

class ViewController: UIViewController {
    @IBOutlet weak var view1: UIView!

    override func viewDidLoad() {
        super.viewDidLoad()

        let customView = CustomView.instanceFromNibWithFrame(view1.bounds)
        view1.addSubview(customView)
    }
}

但是让我们面对它,我很懒,代码变得有点混乱。有没有办法从构造函数中将对象添加到数组中,如下所示:

    var blockArray = [];
    var block1 = new Block();
    blockArray.push(block1);

其中this.Block表示新创建的对象。

有没有办法引用像这样的对象?

提前致谢

1 个答案:

答案 0 :(得分:5)

  

有没有办法引用像这样的对象?

是的,它实际上是this

var blockArray = [];

function Block() {
  this.foo = 42;
  blockArray.push(this);
}

new Block();

console.log(blockArray);