我被告知不要for...in在JavaScript中使用数组.为什么不?
这已经困扰了我一段时间了。在Typescript中,如果我定义一个For-in循环,则我的变量始终被视为字符串。例:
for(var room in this.rooms) {
room.placement.x = 52;
}
Run Code Online (Sandbox Code Playgroud)
“ room.placement.x”将失败,因为它将“ room”视为字符串。“ this.rooms”实际上是Room对象的集合,但是room不是Room,而是一个字符串。
这是Typescript版本问题还是存在的问题。非常令人沮丧。
有没有一种方法可以定义房间,以便Typescript可以将其视为房间?
房间的定义是:“私人房间:Room.Game.Room [];”
它是一个自定义对象的数组。
我有一个像这样编写的javascript数组...
var json = [
{"id":"1", "title":"Test 1", "comment":"This is the first test"},
{"id":"2", "title":"Test 2", "comment":"This is the second test"}
];
Run Code Online (Sandbox Code Playgroud)
我想要做的是得到每一个ID.
我一直在尝试这个
for(x in json[0]){
alert(x.id);
}
Run Code Online (Sandbox Code Playgroud)
但没有运气,有人能指出我正确的方向吗?谢谢,麻烦您了 :)