1.map不会改变原数组,需要重新赋值
var arr = [1,2,3]
var newArr = arr.map(item=>item*item); // [1,4,9]
2.获取数组集的某一单个属性值。
var arr = [{id:1,name:'zs'},{id:2,name:'ls'}];
// 获取这个数组集里所有的name属性值,放到一个数组里
var newArr = arr.map((item)=>{return item.name})
// ['zs','ls']
3.代码优化
var ENVIRONMENT_IS_WEB = false;
var ENVIRONMENT_IS_WORKER = false;
var ENVIRONMENT_IS_NODE = false;
var ENVIRONMENT_IS_SHELL = false;
var Module = {}
if (Module['ENVIRONMENT']) {
if (Module['ENVIRONMENT'] === 'WEB') {
ENVIRONMENT_IS_WEB = true;
} else if (Module['ENVIRONMENT'] === 'WORKER') {
ENVIRONMENT_IS_WORKER = true;
} else if (Module['ENVIRONMENT'] === 'NODE') {
ENVIRONMENT_IS_NODE = true;
} else if (Module['ENVIRONMENT'] === 'SHELL') {
ENVIRONMENT_IS_SHELL = true;
} else {
throw new Error('The provided Module[\'ENVIRONMENT\'] value is not valid. It must be one of: WEB|WORKER|NODE|SHELL.');
}
} else {
ENVIRONMENT_IS_WEB = typeof window === 'object';
ENVIRONMENT_IS_WORKER = typeof importScripts === 'function';
ENVIRONMENT_IS_NODE = typeof process === 'object' && typeof require === 'function' && !ENVIRONMENT_IS_WEB && !ENVIRONMENT_IS_WORKER;
ENVIRONMENT_IS_SHELL = !ENVIRONMENT_IS_WEB && !ENVIRONMENT_IS_NODE && !ENVIRONMENT_IS_WORKER;
}
4.代码改写
var key = {
ENVIRONMENT_IS_WEB: false,
ENVIRONMENT_IS_WORKER: false,
ENVIRONMENT_IS_NODE: false,
ENVIRONMENT_IS_SHELL: false,
}
if (Module['ENVIRONMENT']) {
if (['WEB', 'WORKER', 'NODE', 'SHELL'].includes(Module['ENVIRONMENT'])) {
key['ENVIRONMENT_IS_' + Module['ENVIRONMENT']] = true;
} else {
throw new Error('The provided Module[\'ENVIRONMENT\'] value is not valid. It must be one of: WEB|WORKER|NODE|SHELL.');
}
}
5.假如一个数组对象 domainNameData, 另一个数组对象 data
第一个数组对象可能是第二个数组对象的子集也可能不是子集,需要获取到属于data里面的所有的id集合。
var domainNameData: [
{
id: 1,
label: "osg-static.sgcc.com.cn",
children: [
{
id: 1,
title: "网上国网专属活动:申请平安电e贷可获得8折利息优惠券",
desc: "快来参加吧!",
},
{
id: 2,
title: "网上国网专属活动:申请平安电e贷可获得8折利息优惠券",
desc: "快来参加吧!",
},
],
}
]
var data = [
{
id: 1,
label: "osg-static.sgcc.com.cn",
children: [
{
id: 1,
title: "网上国网专属活动:申请平安电e贷可获得8折利息优惠券",
desc: "快来参加吧!",
},
{
id: 2,
title: "网上国网专属活动:申请平安电e贷可获得8折利息优惠券",
desc: "快来参加吧!",
},
],
open: false,
},
{
id: 2,
label: "mp.weixin.qq.com",
children: [
{
id: 1,
title: "交费“折扣”力度大?小心被犯罪分子当洗钱工具!",
desc: "诈骗洗钱套路深,千万别当真!",
img: "https://ddywbdthumb.oss-cn-beijing.aliyuncs.com/43227_1653019923_1640682829808.jpg",
},
],
open: false,
},
];
let ids = this.domainNameData.map((item) => item.id);
console.log(ids);
let domainChecked = this.data.filter((val, item) => {
return ids.includes(val.id);
});
if(domainChecked.length > 0){
domainChecked = domainChecked.map((item) => item.id);
}else{
domainChecked = [];
}