javascript - 我如何在 JavaScript 数组中进行正则表达式查找 uof 值?

标签 javascript arrays node.js

假设我有一个类似于

的对象数组
[ {name:"value1", action:"U"}, {name:"text2", action:"d"} ]

还有更多条目。

我想在其中查找一个值,但是出现了问题,假设我想查看列表中的任何单词是否在字符串“我想查找 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 );

如果您正在寻找其他方法来操作数据,您可能需要查看 underscore .

编辑:我对你最初的问题的看法有点不正确,还注意到@pimvdb转义建议。这可能更符合您的需求。

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 );

关于javascript - 我如何在 JavaScript 数组中进行正则表达式查找 uof 值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9508488/

相关文章:

javascript - 通过ajax发送带有多个参数的表单

javascript - 如何使用 select :false 为字段创建虚拟属性

javascript - JHipster 7.1.0 ReactJS 构建 jar

java - 由于在java上无法正常工作

javascript - 用nodejs在文件上写http请求

javascript - 在字符串数组中查找具有重复符号的字符串

javascript - 如何保存用户信息(用户名)firebase new Angular 2

javascript - JSON 值未正确附加到 Html

c - 二维数组,按总和对行进行排序

ruby - 要使用多个键散列的数组