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
      })
    },

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM