作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在阅读learnjsdata.com并遇到了这种不熟悉的 JavaScript 语法。语法如下:
lookupIndex[row[lookupKey]] = row;
有人知道这里发生了什么吗?我还没见过这样的语法。在上下文中使用:
数据
var articles = [{
"id": 1,
"name": "vacuum cleaner",
"weight": 9.9,
"price": 89.9,
"brand_id": 2
}, {
"id": 2,
"name": "washing machine",
"weight": 540,
"price": 230,
"brand_id": 1
}, {
"id": 3,
"name": "hair dryer",
"weight": 1.2,
"price": 24.99,
"brand_id": 2
}, {
"id": 4,
"name": "super fast laptop",
"weight": 400,
"price": 899.9,
"brand_id": 3
}];
var brands = [{
"id": 1,
"name": "SuperKitchen"
}, {
"id": 2,
"name": "HomeSweetHome"
}];
函数与调用
function join(lookupTable, mainTable, lookupKey, mainKey, select) {
var l = lookupTable.length,
m = mainTable.length,
lookupIndex = [],
output = [];
for (var i = 0; i < l; i++) { // loop through l items
var row = lookupTable[i];
lookupIndex[row[lookupKey]] = row; // create an index for lookup table
}
for (var j = 0; j < m; j++) { // loop through m items
var y = mainTable[j];
var x = lookupIndex[y[mainKey]]; // get corresponding row from lookupTable
output.push(select(y, x)); // select only the columns you need
}
return output;
};
var result = join(brands, articles, "id", "brand_id", function(article, brand) {
return {
id: article.id,
name: article.name,
weight: article.weight,
price: article.price,
brand: (brand !== undefined) ? brand.name : null
};
});
console.log(result);
感谢任何答案或指示,谢谢!
最佳答案
将其视为两个单独的函数调用:
var rowLookup = row[lookupKey];
lookupIndex[rowLookup] = row;
这与在同一行中完成所有操作相同:
lookupIndex[row[lookupKey]] = row;
关于javascript - `lookupIndex[row[lookupKey]] = row;` 是如何工作的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53268992/
我有联系人的查找键,现在我想使用这些查找键将联系人图像作为位图/输入流获取。 Android 文档有助于获取图像,但联系人 ID 不是 lookupkey。 public InputStream op
我正在阅读learnjsdata.com并遇到了这种不熟悉的 JavaScript 语法。语法如下: lookupIndex[row[lookupKey]] = row; 有人知道这里发生了什么吗?我
我正在关注 tutorial在 Android 开发者网站上。它在 Java 示例中使用 Kotlin。我找到了这个 post堆栈溢出大约等价,但我不明白答案。 原代码为: // Defines th
我是一名优秀的程序员,十分优秀!