0

想象有一个对象:

object = {
  'foo': 1,
  'bar': 'TARGET,
  'baz': 3
}

和一组对象:

arrayOfObjects = [
  {
    'john': 'smith',
    'paul': 'walker'
  },
  {
    'bryan': 'best',
    'targetProp': 'TARGET'
  }
]

检查第一个对象是否具有与数组中具有具体名称属性的某个对象相交的属性值的最简单算法是什么targetProp

for (prop in object) {
  arary.forEach(arrayOfObjects, function(foundObject) {
    if (prop.indexOf(foundObject.targetProp) !== -1) {
      // Do smth
    }
  })
}

是否可以使用 JavaScript 或 Dojo 工具仅通过一个循环找到它?

4

1 回答 1

0

你想把它做好吗?如果没有,一个丑陋的为什么可以使用JSON.stringify.

就像是 :

var foo = JSON.stringify(arrayOfObjects);
for (prop in object) {
  if(foo.indexOf('"' + prop + '":') > -1) { //add double quote and colon to only match properties
      // Do smth
  }
}

但这真的很丑……

于 2015-06-15T12:35:40.597 回答