В моем случае сравниваемые массивы содержат только числа и строки. Эта функция покажет вам, содержат ли массивы одинаковые элементы.
function are_arrs_match(arr1, arr2){
return arr1.sort().toString() === arr2.sort().toString()
}
Давайте проверим это!
arr1 = [1, 2, 3, 'nik']
arr2 = ['nik', 3, 1, 2]
arr3 = [1, 2, 5]
console.log (are_arrs_match(arr1, arr2)) //true
console.log (are_arrs_match(arr1, arr3)) //false
Я экспериментировал и с # оператором и с table.getn (). Я думал, что table.getn () сделает то, что Вы хотели, но как оказалось, он возвращает то же значение как #, а именно, 0. Кажется, что словари вставляют нулевых заполнителей по мере необходимости.
Цикличное выполнение по ключам и подсчет их походят на единственный способ получить размер словаря.
длина таблицы t определяется, чтобы быть любым целочисленным индексом n, таким образом, что t [n] не является нолем, и t [n+1] является нолем; кроме того, если t[1] является нолем, n может быть нулем. Для эквидистантной антенной решетки, с ненулевыми значениями от 1 до данного n, его длина состоит точно в том что n, индекс его последнего значения. Если массив имеет "дыры" (то есть, нулевые значения между другими ненулевыми значениями), то #t может быть любым из индексов, который непосредственно предшествует нулевому значению (то есть, это может рассмотреть любое такое нулевое значение как конец массива).
поэтому только способ получить длину, выполняют итерации по нему.