你可能不知道的一种 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 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论