代码拉取完成,页面将自动刷新
<script>
// 实现slice方法
Array.prototype.mlslice = function (start, end) {
let newArr = [];
// this表示arr1
// 如果要截取的数组是一个空数组,什么也不做,直接返回空数组
if (this.length === 0) {
return newArr;
}
// 处理start特殊情况
start = start || 0
if (start < 0) {
start = this.length + start
} else if (start >= this.length) {
return newArr;
}
// 处理end的特殊的情况
end = end || this.length;
if (end > this.length) {
end = this.length;
} else if (end <= start) {
end = this.length + end;
}
for (let i = start; i < end; i++) {
newArr.push(this[i])
}
return newArr;
}
// slice() 方法可从已有的数组中返回选定的元素。
// 返回一个新的数组,包含从 start(包括该元素) 到 end (不包括该元素)的 arrayObject 中的元素。
// start:规定从何处开始选取。如果该参数为负数,
// 则表示从原数组中的倒数第几个元素开始提取,
// slice(-2) 表示提取原数组中的倒数第二个元素到最后一个元素(包含最后一个元素)
// end:规定从何处结束选取。该参数是数组片断结束处的数组下标。
// 如果没有指定该参数,那么切分的数组包含从 start 到数组结束的所有元素。
// 如果该参数为负数, 则它表示在原数组中的倒数第几个元素结束抽取。
// slice(-2,-1) 表示抽取了原数组中的倒数第二个元素到最后一个元素(不包含最后一个元素,也就是只有倒数第二个元素)
let arr1 = [1, 3, 4, 5, 7, 9];
let res1 = arr1.mlslice(2, 4); // 2 4 代表都是索引
console.log(res1); // [4, 5]
let res2 = arr1.mlslice(-2, -1);
console.log(res2); // [7]
let res3 = arr1.mlslice();
console.log(res3) // [1, 3, 4, 5, 7, 9]
let res4 = arr1.mlslice(2);
console.log(res4) // [1, 3, 4, 5, 7, 9]
</script>
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。