我将如何在JavaScript数组中进行正则expression式查找uof值?

说我有一个类似的对象数组

[ {name:"value1", action:"U"}, {name:"text2", action:"d"} ] 

与更多的条目。

我想在这里查找一个值,但是用一个snafu,说我想看看列表中的任何单词是否在string“我想查找value1”,并返回索引号。 我该如何解决这个问题? 如果这很重要的话,这将在Node.JS中运行。

正如epascarello指出的,只是做一个简单的for循环包装在一个函数来获得该索引应该做你正在寻找的东西。

 var a = [ {name:"value1", action:"U"}, {name:"text2", action:"d"} ]; function getIndex( query, arr ) { var reg = RegExp( query ); for ( var i = 0, l = arr.length; i < l; i++ ) { var item = arr[i]; if ( reg.test(item.name) ) return i; } return false; } var index = getIndex( 'text', a ); 

如果您正在寻找其他方式来操作数据,您可能需要查看下划线 。

编辑:我看了你最初的问题有点不正确,也注意了@ pimvdb转义build议。 这可能更多的是你想要的。

 var a = [ {name:"value1", action:"U"}, {name:"text2", action:"d"} ]; function getIndex( query, arr ) { query = escape( query ); for ( var i = 0, l = arr.length; i < l; i++ ) { var item = arr[i], reg = RegExp( escape(item.name) ); if ( reg.test(query) ) return i; } return false; } var index = getIndex( 'I want to look up value1', a );