我有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)
}
})
})
答案 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()等。