【问题标题】:Laravel collection to javascript json then search for valueLaravel 集合到 javascript json 然后搜索值
【发布时间】:2020-07-06 22:24:36
【问题描述】:

我正在使用 laravel 创建一个可以拥有多个项目的用户集合。我想将该集合传递给 javascript 对象,以便我可以检查用户是否具有特定对象。

我使用以下行来获取集合的内容并将其传递给页面:

let items = {!! $user->items->toJson() !!};

这给了我以下结构:

Array -> 0: Object {brand: "brand1", reference: "23423", description: "Item 1 description text"} 1: Object {brand: "brand2", reference: "22344", description: "Item 6 description text"} 2: Object {brand: "brand1", reference: "23239", description: "Item 24 description text"} 3: Object {brand: "brand5", reference: "24908", description: "Item 106 description text"} 4: Object {brand: "brand3", reference: "14545", description: "Item 7 description text"}

如何检查引用“14545”(例如)是否是数组的一部分?

感谢您的帮助。

亚当

【问题讨论】:

    标签: javascript arrays json laravel


    【解决方案1】:

    你可以尝试使用 find 函数,这里是一个例子

    const data = [20, 18, 15, 10, 9];
    
    let found = data.find(element => element < 12);
    
    console.log(found);
    

    对你来说会是这样的

    let found = data.find(element => element.reference == "22235");
    

    如果 found 为 null,这意味着没有 ref 等于“22235”

    希望对你有所帮助

    【讨论】:

      【解决方案2】:

      您可以使用 ES6 find() 方法在 JSON 中搜索特定元素

      let result = items.find(el => el.reference == "14545");
      

      您可以使用以下功能:

      var getObjectByValue = function (array, key, value) {
          return array.filter(function (object) {
              return object[key] === value;
          });
      };
      

      例子:

      getObjectByValue(items, "reference", "14545" );
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-05-15
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-10-21
        • 2021-10-26
        • 2020-12-12
        • 2017-09-04
        相关资源
        最近更新 更多