面试题答案
一键面试代码
let arr = [1, 2, 3, 4, 5];
if (arr.length === 0) {
console.log("数组为空,无需处理");
} else {
arr.length = 3;
}
console.log(arr);
解释
- 边界情况处理:首先使用
if
语句检查数组是否为空。如果arr.length
等于0
,说明数组为空,此时输出提示信息 “数组为空,无需处理”。 - 动态减少数组长度:当数组不为空时,直接通过
arr.length = 3
来改变数组的长度。这种方式会截断数组,只保留前三个元素。 - 对其他属性和方法的影响:这种操作会直接改变数组的
length
属性,其他元素会被移除。对于常见的数组方法,例如push
、pop
、shift
、unshift
等,在数组长度改变后,它们的行为依然遵循数组的基本逻辑。例如push
会在新的length
位置之后添加元素。同时,被移除元素的索引和值不再存在于数组中。最后通过console.log(arr)
输出处理后的数组。