javascript - for...in 之前的未知 JavaScript 语法

标签 javascript

我正在阅读一本关于单页应用程序的书,在某些时候有这样的 for...in 循环:

KEYVAL:
for(key_name in arg_map){
    if(arg_map.hasOwnProperty(key_name)){
        if(key_name.indexOf('_') === 0) continue KEYVAL;

        anchor_map_revise[key_name] = arg_map[key_name];

        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 词。它是一个变量吗?它代表什么?它是做什么用的?这个语法是什么意思?该词仅出现在包含的代码中的两个位置,并且在整个示例中再也没有出现。

我一直在搜索,试图解决这个问题,但到目前为止,我还没有找到任何信息。有人可以帮帮我吗?

谢谢。

最佳答案

KEYVAL: 是这里的一个标签,它在您的循环中用于迭代操作。看documentation

类似于GOTO语句。

它在您的代码中的作用是当此条件变为真时

if(key_name.indexOf('_') === 0) continue KEYVAL;

它转到标签 KEYVAL: 并再次运行循环而不执行此行下面的代码。

关于javascript - for...in 之前的未知 JavaScript 语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17894376/

相关文章:

javascript - 当 img src 等于 jQuery 的特定值时禁用 href

javascript - ionic 和 meteor ;根据提示重置密码

javascript - 如何从多个本地json文件生成highcharts图表

javascript - 根据多个唯一值进行过滤

javascript - Jquery脚本错误 "Access is denied"

javascript - JavaScript 中 CSV 数据的数据操作(填充、最小、最大)?

javascript - 如何让工作网格显示来自 ajax 的数据源?

javascript - 在 Chrome 中使用 window.location.reload 从缓存加载和哈希片段不起作用

javascript - 使用 xpath 通过 javascript 从 XML 中获取内容时遇到问题

javascript - 在数据属性 JSON 对象中转义引号和 html