Вопрос проверяет понимание различий между массивами и другими объектами в JavaScript
Используйте Array.isArray():
if (Array.isArray(myVar)) { ... } Это самый надежный способ, который работает во всех современных браузерах и Node.js.
Массивы в JavaScript — это особый тип объектов, и typeof [] вернёт 'object', что не помогает отличить их от обычных объектов. Раньше использовали хак myVar instanceof Array, но он ненадежен в некоторых случаях (например, при работе с iframe).
Метод Array.isArray() решает эту проблему:
const arr = [1, 2, 3];
const obj = {};
console.log(Array.isArray(arr)); // true
console.log(Array.isArray(obj)); // falseЭтот способ поддерживается всеми современными движками JavaScript.
Frontend developer
Ментор по Frontend
Полное сопровождение до оффера — без дорогих курсов, с оплатой после трудоустройства
Записаться на консультацию