你可能不知道的一种 JavaScript 的 For 循环语法 - 文章教程

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

发布于 2018-02-05 字数 1496 浏览 1850 评论 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

如果你对这篇文章有疑问,欢迎到本站 社区 发帖提问或使用手Q扫描下方二维码加群参与讨论,获取更多帮助。

扫码加入群聊

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

目前还没有任何评论,快来抢沙发吧!

关于作者

JSmiles

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

2583 文章
29 评论
84935 人气
更多

推荐作者

清欢

文章 1 评论 0

贱贱哒

文章 3 评论 0

悸初

文章 2 评论 0

西瓜杏

文章 0 评论 0

各自安好

文章 0 评论 0