【问题标题】:How to combine these 2 javascript codes in one?如何将这 2 个 javascript 代码合二为一?
【发布时间】:2022-08-17 13:54:43
【问题描述】:
      if (value === \"up\") {
        for (const key in data) {
          fetchedData.push({
            id: data[key].id,
            name: data[key].name,
            image: data[key].image,
            location: data[key].location,
            price: data[key].price,
          });
        }
      }
//////////////////////////////////////////////////////////
      if (value === \"down\") {
        for (const key in data) {
          fetchedData.push({
            id: data[key].id,
            name: data[key].name,
            image: data[key].image,
            location: data[key].location,
            price: data[key][\"fixed-price\"],
          });
        }
      }

他们也共享相同的东西,只是价格不同。我试过 if (value === \"up\" ||value === \"down\" ) 然后在 for in 循环中添加条件但不起作用

    标签: javascript


    【解决方案1】:

    根据您在变量中的条件获取正确的属性名称。然后在price 属性中将该变量用作price: data[key][propertyName]

    let propertyName = value === "up" ? "price" : "fixed-price";
    
    for (const key in data) {
      fetchedData.push({
        id: data[key].id,
        name: data[key].name,
        image: data[key].image,
        location: data[key].location,
        price: data[key][propertyName],
      });
    }

    【讨论】:

      【解决方案2】:

      尝试这个:

              for (const key in data) {
                fetchedData.push({
                  id: data[key].id,
                  name: data[key].name,
                  image: data[key].image,
                  location: data[key].location,
                  price: value === "up" ? data[key].price || data[key]["fixed-price"],
                });
              }
            }
      

      【讨论】:

        【解决方案3】:

        您可以使用三元运算符来做到这一点:

            if (value === "up" || value === "down") {
              for (const key in data) {
                fetchedData.push({
                  id: data[key].id,
                  name: data[key].name,
                  image: data[key].image,
                  location: data[key].location,
                  price:  value === "up" ? data[key].price : data[key]["fixed-price"]
                });
              }
            }
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2019-09-11
          • 2012-10-30
          • 1970-01-01
          • 2020-08-17
          相关资源
          最近更新 更多