我一直在读一本关于用Javascript编写单页应用程序的书,我试过这段代码:
//begin merge changes into anchor map
KEYVAL:
for(key_name in arg_map){
if(arg_map.hasOwnProperty(key_name)){
//skip dependent keys during iteration
if(key_name.indexOf('_') === 0){
continue KEYVAL;
}
//update independent key valie
anchor_map_revise[key_name] = arg_map[key_name];
//update matching dependent key
key_name_dep = '_' + key_name;
if(arg_map[key_name_dep]){
anchor_map_revise[key_name_dep] = arg_map[key_name_dep];
}
else{
delete anchor_map_revise[key_name_dep];
delete anchor_map_revise['_s' + key_name_dep];
}
}
}
问题在于我不知道'KEYVAL:'的作用。有人可以解释并可能参考我的特定符号的一些文档吗?谢谢。
答案 0 :(得分:1)
KEYVAL:
这是一个标签。这是执行跳转到continue KEYVAL;
语句的地方。
continue语句可以包含允许的可选标签 程序跳转到标记循环语句的下一次迭代 而不是当前的循环。在这种情况下,继续声明 需要嵌套在这个带标签的语句中。
这主要用于处理嵌套循环,因为它允许您选择要跳转的循环级别。在您的代码中,它看起来毫无用处,您可以删除标签并保留一个简单的continue
语句。