[英]A cleaner and more cross-browser way to check a JSON value
我正在使用 API,有一个值被存储为变量(字符串类型),如下所示:
var majorValue = "some_major_name";
然后我想检查上面的字符串值并将其与专业的短列表(组)进行比较,以加载相关的 HTML 片段。 我想出了这个includes
的解决方案,但我不确定这是否是最干净/最有效的方法:
if(majorValue.includes('Accounting') || majorValue.includes('Business_Administration') || majorValue.includes('BA_and_Accounting') || majorValue.includes('BA_and_Chemistry') || majorValue.includes('BA_and_Communication') || majorValue.includes('BA_and_Computer_Info_Systems') || majorValue.includes('BA_and_Economics') || majorValue.includes('BA_and_Sport_Management') || majorValue.includes('BA_and_Theatre') || majorValue.includes('Business_and_Visual_Arts')||majorValue.includes('Computer_Information_Systems')||majorValue.includes('Data_Analytics') || majorValue.includes('Economics') || majorValue.includes('Marketing') || majorValue.includes('Sustainable_Business')) {
$('#internship').load(`./snippets/internship/Business.html`);
};
应该有比写一大堆includes
和||
更好的方法检查和加载 HTML。 将主要值存储在数组中,然后检查majorValue 是否与array
中的一项匹配,如果匹配,则执行某些操作(加载HTML 片段)不是更好。
const something = [
'Accounting',
'Business_Administration',
'BA_and_Accounting',
// ...
'Marketing'
];
var majorValue = "Marketing";
if (something.includes(majorValue)) {
console.log("found");
//$('#internship').load(`./snippets/internship/Business.html`);
};
或者另一种方式,对每个候选人使用数组,然后在其上找到您的majorValue
包含的项目。
const something = [ 'Accounting', 'Business_Administration', 'BA_and_Accounting', // ... 'Marketing' ]; var majorValue = "Marketing and stuff"; var x = something.find(function(item) { return majorValue.indexOf(item)>-1 }) console.log("found at", x)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.