你可能不知道的一种 JavaScript 的 For 循环语法

发布于 2018-02-05 21:40:15 字数 1166 浏览 2269 评论 0

作为 JavaScript 的开发人员,我们都要写很多的 for 循环来完成特定的效果。 前几个月我看到了另一种语法,我真的很喜欢。 这样可以节省一些时间,并且它们看起来更漂亮。 然而我的另一个同事却说,这个奇特的语法是正确的。

你可能不知道的一种 JavaScript 的 For 循环语法

比方说,我代表用户在一个系统中数据的数组。 那么之前我写的代码是:

var users = [
    { name: "A"},
    { name: "B"},
    { name: "C"},
    { name: "D"},
    { name: "E"}
];

还有一个额外的列变种 user = users[i] 。通常我感觉更舒服,如果我有 user ,而不是 user[i]。 因此新的方式:

for(var i = 0; user = users[i]; i++) {
// ...
}

我写了一个问题,在 StackOverflow 的和球员那里发现了问题。 如果一些数组的元素是 false 这种语法将不起作用。 也就是说,如果我有:

var users = [
{ name: "A"},
{ name: "B"},
false,
{ name: "D"},
{ name: "E"}
];

该循环将停止第三元素上,因为 user 将是错误的。 我们当然可以解决这通过检查变量的类型:

for(var i=0; typeof (user=users[i]) !== "undefined"; i++) {
// ...
}

即使是这样,是不完美的,因为如果事情是 undefined,我们会在同样的情况,得出的结论是,我们可以使用第二个语法只有当我们是 100% 肯定,我们的元素是 true

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

关于作者

JSmiles

生命进入颠沛而奔忙的本质状态,并将以不断告别和相遇的陈旧方式继续下去。

0 文章
0 评论
84961 人气
更多

推荐作者

醉城メ夜风

文章 0 评论 0

远昼

文章 0 评论 0

平生欢

文章 0 评论 0

微凉

文章 0 评论 0

Honwey

文章 0 评论 0

qq_ikhFfg

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文