JavaScript 查找表
在今天的帖子中,我们将学习使用 JavaScript 中的一种简单方式创建查找表。
JavaScript 中的查找表
查找表是在数据处理中用更简单的数组索引操作替换运行时计算的数组。该过程称为直接寻址。JavaScript 使用对象作为查找函数。
这是用于提高搜索结果查询性能的著名算法。让我们通过下面的例子来理解它。
假设你经营一个电子商务网站,其主要功能是列出产品。根据用户选择的过滤器,显示产品的价格。
每次访问服务器时查询此输出都会降低性能。你可以根据最常用的过滤器对产品进行索引以解决此问题。
const DBProductArray = [
{Color: 'Red', Size: 'Small', Price: '$450'},
{Color: 'Red', Size: 'Medium', Price: '$460'},
{Color: 'Red', Size: 'Large', Price: '$460'},
{Color: 'Red', Size: 'Extra-Large', Price: '$470'},
{Color: 'White', Size: 'Small', Price: '$650'},
{Color: 'White', Size: 'Medium', Price: '$660'},
{Color: 'White', Size: 'Large', Price: '$670'},
{Color: 'White', Size: 'Extra-Large', Price: '$680'}
];
const lookupMap = {};
由于服务器的 List API 操作,我们在上面的示例中有一个 DBProductArray
。该数组包含产品信息,例如产品 Color
、Size
和 Price
。
根据最终用户选择的过滤器,我们需要显示 Price
信息。为了加快搜索速度,我们将创建一个查找表,其中 Color
和 Size
信息作为键
,Price
信息作为值
。
const arrayLength = DBProductArray.length;
for (i = 0; i < arrayLength; i++) {
var record = DBProductArray[i];
if (typeof lookupMap[record.Color] === 'undefined')
lookupMap[record.Color] = {};
lookupMap[record.Color][record.Size] = record.Price;
}
console.log(lookupMap);
输出:
{
Red: {
Extra-Large: "$470",
Large: "$460",
Medium: "$460",
Small: "$450"
},
White: {
Extra-Large: "$680",
Large: "$670",
Medium: "$660",
Small: "$650"
}
}
上面的代码循环遍历 DBProductArray
并检查颜色信息是否存在。我们创建颜色作为嵌套对象的键(如果存在)。
嵌套对象包含作为键的 size
和作为值的 price
。你现在无需查询数据库即可查看选定产品的定价信息,从而节省响应时间并提高性能。
const selectedColor = 'White';
const selectedSize = 'Large';
console.log(lookupMap[selectedColor][selectedSize]);
尝试在任何支持 JavaScript 的浏览器中运行上述代码片段;它将显示以下结果。
输出:
"$670"
演示
相关文章
JavaScript 表格滚动
发布时间:2024/03/18 浏览次数:139 分类:JavaScript
-
要在网页中滚动表格内容,我们可以依赖一些 JavaScript 属性来依次执行任务。overflow、overflowX 和 overflowY 的使用使表格可滚动且可访问。
用 JavaScript 检查按钮是否被点击
发布时间:2024/03/18 浏览次数:147 分类:JavaScript
-
使用 JavaScript 检查按钮是否被点击可以通过三种方法进行。在 HTML 中添加 onclick 属性,将脚本标签中的 onclick 初始化为方法,使用 EventListener 可能是更好的方法。
JavaScript 更改按钮文本
发布时间:2024/03/18 浏览次数:128 分类:JavaScript
-
本教程展示了如何使用 JavaScript 更改按钮文本,并演示了使用 jQuery 更改按钮文本。
JavaScript 禁用按钮单击
发布时间:2024/03/18 浏览次数:50 分类:JavaScript
-
要通过 JavaScript 约定禁用按钮单击,需要选择按钮的实例并在其上应用 disabled 属性。jQuery 属性 disabled 也用于在单击后禁用按钮。
在 JavaScript 的警报框中显示变量值
发布时间:2024/03/18 浏览次数:166 分类:JavaScript
-
在本文中,我们将通过不同的示例了解 JavaScript 中的 Alert 方法是什么,以及 JavaScript 中警报框的用途和好处。
JavaScript 中的内联 if 语句
发布时间:2024/03/18 浏览次数:171 分类:JavaScript
-
JavaScript 条件语句可以使用内联 if 语句进行操作,也称为三元运算符。另一种方法是使用逻辑运算符来获得可感知的答案
JavaScript 使用 if 语句中的的 OR 条件
发布时间:2024/03/18 浏览次数:132 分类:JavaScript
-
JavaScript 包含条件语句,如 if else 语句、switch case 等。这些语句是有条件的,用于检查给定条件是否为 True OR Not,为此我们使用 OR ||和 && 运算符。