无论如何,我想做一些相对简单的事情。
我需要将页面的路径名与对象的 kv 对进行比较。例如:
if("pathname" === "key"){return value;}
差不多就这些了。我不确定如何在常规 Javascript 或 jQuery 中执行此操作。两者都可以接受。
你可以在这里看到我的 fiddle :http://jsfiddle.net/lz430/2rhds1x3/
JavaScript:
var pageID = "/electrical-electronic-tape/c/864";
var pageList = [{
"/electrical-electronic-tape/c/864": "ElectronicTape",
"/industrial-tape/c/889": "IndustrialTape",
"/sandblasting-tape/c/900": "SandblastingTape",
"/Foam-Tape/c/875": "FoamTape",
"/double-coated-d-c-dhesive-tape/c/872": "DCTape",
"/Adhesive-Transfer-Tape/c/919": "ATTape",
"/Reflective-Tape/c/884": "ReflectiveTape",
"/custom-moulding": "CustomMoulding",
"/request-a-quote": "RequestQuote"
}];
var label = pageID in pageList;
$('.el').html(label);
最佳答案
首先,您的“pageList”应该只是一个普通对象,而不是数组中的对象:
var pageList = {
"/electrical-electronic-tape/c/864": "ElectronicTape",
"/industrial-tape/c/889": "IndustrialTape",
"/sandblasting-tape/c/900": "SandblastingTape",
"/Foam-Tape/c/875": "FoamTape",
"/double-coated-d-c-dhesive-tape/c/872": "DCTape",
"/Adhesive-Transfer-Tape/c/919": "ATTape",
"/Reflective-Tape/c/884": "ReflectiveTape",
"/custom-moulding": "CustomMoulding",
"/request-a-quote": "RequestQuote"
};
然后您可以将“标签”设置为映射中的值:
var label = pageList[pageID] || "(not found)";
如果查找失败,上面语句的最后一点会将标签设置为“(未找到)”,这可能适用于也可能不适用于您的情况。
关于javascript - 如何将字符串与对象键进行比较并获取该键的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32487835/