我不知道这种比较是否可行。我想比较下面列出的数组。
$array = ["User1-2", "User2-2", "User3-2", "User4-2"];
$array2 = ["User1-2:280", "User2-2:280", "User3-2:280", "User4-2:280"];
用户1-2的结果为280,应该打印结果
答案 0 :(得分:2)
您没有提供特定的答案格式,因此这是一个简单的实现,它遍历第一个数组中的所有元素,并检查第二个数组是否具有以它开头的值。
var $array = ["User1-2", "User2-2", "User3-2", "User4-2"];
var $array2 = ["User1-2:280", "User2-2:280", "User3-2:280", "User4-2:280"];
$array.forEach(x=> {
var found = $array2.find(x=>x.startsWith(x));
if (!!found) {
console.log(x, found.split(':')[1]);
}
});
答案 1 :(得分:1)
你可以在第二个数组中循环,在:
分割,检查第一部分,如果匹配,则返回第二个
function findX(value, arr) {
for (var i = 0; i < arr.length; i++) {
var toSplit = arr[i].split(':');
if (toSplit[0] === value) {
return toSplit[1];
}
}
}
console.log(findX("User1-2", ["User1-2:280", "User2-2:280", "User3-2:280", "User4-2:280"]));
&#13;
答案 2 :(得分:1)
以下代码应该可以使用!
var $array = ["User1-2", "User2-2", "User3-2", "User4-2"];
var $array2 = ["User1-2:280", "User2-2:280", "User3-2:280", "User4-2:280"];
$array.forEach(element1=>{
console.log(element1, $array2.find(element2=>element2.indexOf(element1)>-1).substring(element1.length+1))
})