mirror of
https://github.com/angular/angular
synced 2026-05-24 09:28:37 +00:00
29 lines
666 B
TypeScript
29 lines
666 B
TypeScript
/**
|
|
* @license
|
|
* Copyright Google LLC All Rights Reserved.
|
|
*
|
|
* Use of this source code is governed by an MIT-style license that can be
|
|
* found in the LICENSE file at https://angular.dev/license
|
|
*/
|
|
|
|
// works with arrays of string, numbers and booleans
|
|
export const arrayEquals = (
|
|
a: (string | number | boolean)[],
|
|
b: (string | number | boolean)[],
|
|
): boolean => {
|
|
if (a.length !== b.length) {
|
|
return false;
|
|
}
|
|
if (a.length === 0) {
|
|
return b.length === 0;
|
|
}
|
|
|
|
let equal;
|
|
for (let i = 0; i < a.length; i++) {
|
|
equal = i === 0 ? a[i] === b[i] : a[i] === b[i] && equal;
|
|
if (!equal) {
|
|
break;
|
|
}
|
|
}
|
|
return equal ?? false;
|
|
};
|