数组高频面试题(含真实通俗答案).docxVIP

  • 0
  • 0
  • 约2.99千字
  • 约 5页
  • 2026-09-08 发布于河北
  • 举报

数组高频面试题(含真实通俗答案).docx

数组高频面试题(含真实通俗答案)

一、基础概念题(入门必问)

1.说说数组和普通对象的区别?

答案:

1.数组是有序的键值集合,下标是数字索引,默认从0开始;普通对象是无序的,键名是字符串/符号。

2.数组自带length属性,可自动更新,能直接获取元素个数;普通对象没有原生length,需要手动遍历计算。

3.数组有大量专属遍历、操作方法(push、map、filter等);普通对象没有专属方法,需要借助Object工具方法操作。

4.数组属于特殊的对象,typeof判断数组会返回object,无法直接区分。

2.怎么准确判断一个变量是不是数组?列举常用方法

答案:

1.最靠谱、面试最认可:Array.isArray(arr),兼容所有场景,跨窗口也不会出错。

2.原型判断:arrinstanceofArray,简单好用,但有缺陷,多个页面嵌套时会判断失效。

3.精准原型检测:Object.prototype.toString.call(arr)===[objectArray],万能判断,所有环境都通用。

3.数组的length属性有什么特点?可以修改吗?

答案:

可以手动修改,这是数组很特殊的点。

1.改小length:会直接截断数组,超出长度的元素直接丢失,不可逆。

2.改大length:数组会新增空空位,新增位置的值为empt

文档评论(0)

1亿VIP精品文档

相关文档