如何访问forEach后获得的对象的属性?

问题描述 投票:0回答:1

我从后台接收到一个嵌套对象数组,我通过它们来修改值,并根据我的应用需要的条件进行过滤。

      const data = this.market;
      data.forEach(function(item: any, i) {
        if (item.functional_id === 'cool') {
          data.splice(i, 1);
          data.unshift(item);
        }
        if (item.functional_id === 'max') {
          item.name = 'Max min';
        }
        item.products.forEach(function(product) {
          product.items.forEach(function(article) {
            console.log(article);
          });

        });
      });
  }


在console.log点,我收到了几个结构如下的对象。

{
  "name": "Standard",
  "description": "for 50",
  "price": 20,
  "functional_id": "sacs_housse"
}

我得到的一些项目的价格有一个小数点,用一个点隔开,我想检查它是否有小数点,用逗号代替它。但是我没有看到访问属性的方法,因为我试过的所有类型的循环都会返回一个错误.我试过的一些东西,比如下面。

const data = this.market;
      data.forEach(function(item: any, i) {
        if (item.functional_id === 'cool') {
          data.splice(i, 1);
          data.unshift(item);
        }
        if (item.functional_id === 'furniture') {
          item.name = 'Max min';
        }
        item.products.forEach(function(product) {
          product.items.forEach(function(article) {
            const price = item.price;
            if (price.contains('.')) {
              price.replace(/./g, ',');
            }            
          });

        });
      });

有人看到了我所犯的错误,可以帮助我.先谢谢你。

javascript loops object nested angular7
1个回答
0
投票

我在mdn中找到了这个方法,效果很好,谢谢大家的帮助。

new Intl.NumberFormat('de-DE').format(item.price);

这是到mdn的链接 https:/developer.mozilla.orgen-USdocsWebJavaScriptReferenceGlobal_ObjectsIntlNumberFormat。

© www.soinside.com 2019 - 2024. All rights reserved.