在字符串末尾出现一个单词

时间:2016-03-05 05:07:26

标签: javascript underscore.js

我有2个阵列

array1 = ["e4dfda158c82cc931e2479e32bde42defacebook", "5824fb40c4a97e21ef9715ea69c1cfb9twitter", "6da098061f82c215f37a4949b1555e26linkedinpage"];

array2 = ["facebook", "twitter", "linkedin", "xing", "weibo", "instagram", "googleplus", "pinterest"];

我想比较这两个数组并获得如下所示的输出

output = ["facebook", "twitter"]

比较基于检查array1中'array2'中每个元素的存在(即在字符串的末尾)。 我尝试使用多个for循环但不适合我,有没有更好的方法使用Underscore.js,lodash。

尝试

array2.forEach(function(data) {
    array1.forEach(function(data2) {
         n = data2.indexOf(data);
         if(n!=-1) {
            console.log(data)
        }
    })
})

2 个答案:

答案 0 :(得分:1)

过滤Required Password File Name and Locations. UNIX and Linux: Name: orapwORACLE_SID Location: ORACLE_HOME/dbs Windows: Name: PWDORACLE_SID.ora Location: ORACLE_HOME\database 这些字词,以满足array2中以该字词结尾的某个元素的条件:

array1

你可以使用下划线或lodash等价物,但除非你有浏览器支持问题(例如IE),否则没有理由。

答案 1 :(得分:0)

indexOf仅在未找到子字符串的情况下返回-1。您可能想要检查偏移量是data2.length() - data.length()等。

相关问题