我有两个数组需要检查它们之间的差异,并返回该差异的索引。
例如,当输入值改变时,我目前有两个数组会被更新。每当输入中有新标签时,如“@testing”,就会更新
我目前正在将这两个数组转换为字符串并进行比较,但无法返回差异的索引。
例如,当输入值改变时,我目前有两个数组会被更新。每当输入中有新标签时,如“@testing”,就会更新
newTags
数组。我需要将newTags
数组与oldTags
数组进行比较,并返回差异的索引。我目前正在将这两个数组转换为字符串并进行比较,但无法返回差异的索引。
var newTags = [];
var oldTags = [];
$input.on('keyup', function () {
var newValue = $input.val();
var pattern = /@[a-zA-Z]+/ig;
var valueSearch = newValue.search(pattern);
if (valueSearch >= 0) {
newTags = newValue.match(pattern);
if ((newTags + "") != (oldTags + "")) {
//Need index of difference here
console.log(newTags, oldTags);
}
oldTags = newTags;
}
});
["@testing", "@hello"]
,而 oldTags 可能是["@test", "@hello"]
。因此,差异的索引为 0,因为数组中的第一个值不同。 - FizzixnewTags
和oldTags
,并返回数组中差异的位置。 - Fizzix$.each
循环可能是最好的解决方案... - Fizzix