Javascript仅通过数组的已定义属性循环。怎么用?
例如,如果我通过id保留引用数组,如下所示:Javascript仅通过数组的已定义属性循环。怎么用?,javascript,loops,Javascript,Loops,例如,如果我通过id保留引用数组,如下所示: if(typeof channel_boards[misc.channel_id] == 'undefined') { channel_boards[misc.channel_id] = $('<div class="channel" channel_id="'+misc.channel_id+'"></div>').appendTo('#board'); } if(通道板类型[misc.channel\u id]
if(typeof channel_boards[misc.channel_id] == 'undefined') {
channel_boards[misc.channel_id] = $('<div class="channel" channel_id="'+misc.channel_id+'"></div>').appendTo('#board');
}
if(通道板类型[misc.channel\u id]=“未定义”){
通道板[其他通道板id]=$('').appendTo(''通道板');
}
然后我在数组中循环寻找所需的引用。我也在循环未定义的属性。是否可以仅通过定义的属性进行循环
for(i=0;i<channel_boards.length;i++)
{
if(channel_boards[i] != undefined)
{
if(channel_boards[i].attr('channel_id') != visible) {channel_boards[i].addClass('hidden_board');}
else {channel_boards[i].removeClass('hidden_board');}
}
}
for(i=0;i听起来您最好使用对象来存储引用
var channel_boards = {};
var channel_id = 1;
// add property
channel_boards["channel_" + channel_id] = ......
// enumerate properties
for (var key in channel_boards) {
if (channel_boards.hasOwnProperty(key) {
channel_boards[key].attr(......
}
}
// delete property
delete channel_boards["channel_" + channel_id];
该死的我很笨:)谢谢,只需要添加前缀。:)不需要前缀,任何可以转换为字符串的东西都可以(包括数字)。这样你就可以逃脱。[channel\u id]