【问题标题】:Javascript 2D Arrays value searchJavascript 2D 数组值搜索
【发布时间】:2018-05-03 11:48:43
【问题描述】:

这是我的 javascript 对象-

var test=[
            [
                {book:"A"},
                {book:"B"}
            ]
          ]

如果我想在这个对象中检查一个值为“C”的对象是否存在,我该怎么做?

【问题讨论】:

  • 只是一张支票?或者你想得到这个对象吗?请添加您的尝试。
  • 你可以使用过滤功能来获取对象
  • 我想在对象中找到一个值:- 这是我的尝试- if(!test[0].includes('C'))

标签: javascript multidimensional-array javascript-objects


【解决方案1】:

您可以使用嵌套的Array#some 并再次检查该值。

var test = [[{ book: 'A' }, { book: 'B' }]],
    check = 'c';
    
console.log(test.some(a => a.some(({ book }) => book === check))); // false
console.log(test.some(a => a.some(({ book }) => book === 'A')));   // true

【讨论】:

    【解决方案2】:

    我的尝试是:

    let hasC = false;
    for (let arr of test) {
      const obj = arr.find(b => b.book === 'C')
      if(obj) {
        hasC = true;
        break;
      }
    }
    
    console.log('does test has a book "C"? ', hasC);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-12
      • 2015-07-02
      • 2019-06-30
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多