js 数组迭代方法filter结合字符串方法indexOf 过滤对象属性包含某字段的那个对象
arr = [
{name: "pid", value: null, ccname: "细项ID"},
{name: "product_name", value: null, ccname: "产品名称"},
{name: "product_num", value: null, ccname: "产品编号"}...]
arr = arr.filter((item)=>{
return item.ccname !==""&&item.ccname.indexOf("c_") == -1&&item.ccname.indexOf("d_")&&item.ccname.indexOf("p_")
})
数组过滤掉对象数组内ccname为空和属性ccname的值包含c_,d_,p_的对象
返回的过滤后的对象重新接收赋值
fnDataInit(){ let arr = []; let keyArr = []; //一:循环对象变成数组键值对形式统一为name:'',value:''的数组 并改变name属性为汉字 套入汉字 keyArr = Object.keys(this.data.trueLyData) // console.log(keyArr) keyArr.map((v,i)=>{ // console.log(v) arr.push({ name:v, value:this.data.trueLyData[v], ccname:this.data.chinakeyArr[i] }) }) // console.log(arr) //二:过滤汉化后键为空的项 //方法1 // let arr2 = [] // arr.map((va)=>{ // // console.log(va.ccname) // if(va.ccname!==""){ // arr2.push(va) // } // }) //方法2: arr = arr.filter((item)=>{ return item.ccname !==""&&item.ccname.indexOf("c_") == -1&&item.ccname.indexOf("d_")&&item.ccname.indexOf("p_") }) console.log(arr) //三:设置到页面可渲染数据中去 this.setData({ showDate:arr }) },