gpt4 book ai didi

javascript - JavaScript 字符串数组中的顺序差异

转载 作者:行者123 更新时间:2023-12-03 00:55:38 25 4
gpt4 key购买 nike

是否有一种简单的方法来获取两个字符串数组的顺序差异?

var A = ['a', 'b'];
var B = ['b', 'a'];

通过比较这两个,有没有一种简单的方法可以找出它们交换了索引?我在网上找不到任何有用的东西我真的不想走很长一段路,因为我使用的数组很大。使用dratable对我的数据表的列进行重新排序,并且我不断地将数据推送到其中,因此每当订单发生变化时,我希望特定的数据进入其指定的列,这就是我需要它的原因,谢谢!

最佳答案

您可以迭代一个数组,并将当前值的索引与另一个给定数组中相同值的索引进行比较。如果两者不匹配,您可以创建映射,其中包含每个值的不匹配矩阵,您可以将其用于进一步计算。请参阅https://jsfiddle.net/f2jL46ke/

const arr1 = ['a', 'b', 'c']
const arr2 = ['b', 'c', 'a']

// I am assuming, that both arrays have an equal length
const differences = arr1.reduce((store, value) => {
const arr1Index = arr1.indexOf(value)
const arr2Index = arr2.indexOf(value)
if(arr1Index !== arr2Index) {
store[value] = [arr1Index, arr2Index]
}
return store
}, {})

console.log(differences)

通过这种方法,您可以知道 A) 哪些字符串不在数组中的同一位置,以及 B) 它们在两个数组中的位置。

关于javascript - JavaScript 字符串数组中的顺序差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52855495/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com