如何正确比较数组元素的子字符串

时间:2019-03-01 18:38:27

标签: javascript

我试图为2个数组中的每个元素相互比较提供一种方法,但只是每个元素的子字符串部分。我的问题是每个元素都是经度和纬度,因此无法正常工作。变量a1仅将纬度值与变量a2进行比较。

功能

function arraysEqual(a1,a2) {
    /* WARNING: arrays must not contain {objects} or behavior may be undefined */
    return JSON.stringify(a1)==JSON.stringify(a2)
}

arraysEqual

arr1 = ["9.1405", "87.3252"]

arr2 = 
["10.1405", "54.3252"]

我想要代码做什么。 Arr1是地理位置列表,arr2是我单击的点(在此功能中将保持不变)

arr1 = ["10.1405", "54.3252"]

arr2 = 
["10.1405", "54.3252"]

“未找到”

call_t

“找到匹配项”

正在发生的事情是将arr2与arr1中的第一个元素进行比较

1 个答案:

答案 0 :(得分:0)

您的问题不清楚。请告诉我们您代码的预期行为。您需要在将来更好地展现自己的情况。但是,让我告诉您一些解决我认为是您的问题的工具。

您可以执行arr1.join('')来获取数组内容的字符串表示形式,并将其与arr2的连接进行比较,如果它们具有相同的内容,则字符串将相等。

arr1.join('') === arr2.join('')

有关联接方法的更多信息,请检查https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/join

另一种方法是比较arr1[0] === arr2[0] && arr1[1] === arr2[1]...。有很多方法可以比较所需的内容。如果这不是您的要求,请进一步提出您的问题,以便我们为您提供帮助