我正在关注本教程:http://vimeo.com/16961179教您如何使用 express.js 制作 View 和局部 View :
var products = [
{
id: 1,
name : 'Mac Book Pro',
description: 'Apple 13 inch Mac Book Pro notebook',
price: 1000
},
{
id: 2,
name : 'iPad',
description: 'Apple 64GB 3G iPad',
price: 899
}
];
module.exports.all = products;
module.exports.find = function(id) {
id = parseInt(id, 10);
var found = null;
productloop: for(product_index in products) {
var product = products[product_index];
if (product.id == id) {
found = product;
break productloop;
}
};
return found;
}
在教程中,这部分作者并没有过多解释。 我对循环部分特别困惑。 谁能向我解释一下(我是 JavaScript 初学者)?
我理解顶部的 products 变量,但它看起来像是一个内部包含其他数组的数组。
最佳答案
该函数通过产品 ID 搜索产品。
- 该循环按顺序将
product
设置为产品数组中的每个产品。 - 它将该产品的 ID 与传递给函数的 ID 进行比较。
- 如果相等,则会跳出循环(是的
goto
)并返回乘积(truthy)。 - 如果正常退出循环,则意味着从未找到该产品,并且将返回 null (falsey)。
关于javascript - 谁能向我解释这段定义一些变量并循环它们的 JavaScript 代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8199842/