千锋教育-做有情怀、有良心、有品质的职业教育机构

手机站
千锋教育

千锋学习站 | 随时随地免费学

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

关注千锋学习站小程序
随时随地免费学习课程

当前位置:首页  >  技术干货  > 详解js数组slice函数

详解js数组slice函数

来源:千锋教育
发布人:xqq
时间: 2023-11-22 20:59:35 1700657975

一、js数组slice函数

js数组slice函数被用于从一个数组中返回一个选定的元素序列,生成一个新的数组对象。

语法如下:


array.slice(start, end)

其中,参数start是必须的,end是可选的。start指定从何处开始选取(包含start所在元素),end(可选)为截止处(不包含)。

示例代码:


var fruits = ['apple', 'banana', 'mango', 'orange', 'pineapple'];
var citrus = fruits.slice(1,3); //截取数组从索引1开始到索引3的元素,不包括索引3的元素
console.log(citrus); //输出:["banana", "mango"]

二、Js数组排序

在使用slice之前,可以对数组进行排序以提高效率。js提供了sort()函数进行排序操作。sort()函数默认将元素转换为字符串,并在Unicode位点顺序下进行排序。可以编写自定义函数用作sort()的参数来控制排序表现。排序完成后使用slice()来提取想要的元素。

示例代码:


var point = [40, 100, 1, 5, 25, 10];
point.sort(function(a, b){return a-b}); //数字排序后生成一个新数组
var newpoint = point.slice(1,3); //提取排序后的第2、3两个元素
console.log(newpoint); //输出:[5, 10]

三、js数组slice原理

js数组slice()的原理是从原先的数组中提取出需要的部分,生成一个新的数组,原数组并不会发生任何改变。slice方法返回的新数组可以存储在一个变量中并作为一个数组使用,这有时可以使代码更整洁易读。

示例代码:


var nums = [1,2,3,4,5];
var newNums = nums.slice(2,4);
console.log(newNums); //输出:[3, 4]
console.log(nums); //输出:[1, 2, 3, 4, 5]

四、js数组

在JavaScript中,数组是一种特殊的对象,用于存储多个元素。js数组中的每个元素可以是任何类型的数据(数字,字符串甚至是另一个数组)。

示例代码:


var myArray = ['苹果', '香蕉', '橙子', 1, 2, 3];
console.log(myArray); //输出:["苹果", "香蕉", "橙子", 1, 2, 3]

五、js数组slice方法

js数组slice()方法用于从已有的数组中返回选定的元素。如果没有指定第二个参数,则选取从起始索引到数组结尾的所有元素。

示例代码:


var fruits = ['苹果', '香蕉', '橙子', '芒果', '梨子'];
var citrus = fruits.slice(1);
console.log(citrus); //输出:["香蕉", "橙子", "芒果", "梨子"]

六、js数组slice和splice

js数组slice()和splice()是Array.prototype上的两个方法。它们都可以从数组中提取元素,但有所不同。slice()返回一个新数组,而splice()删除、替换或插入一个或多个元素,并返回原数组。

示例代码:


var myArray = ['早餐', '午餐', '晚餐', '夜宵'];
var slicedArray = myArray.slice(1,3); //slice()方法从索引1到2返回引用
console.log(myArray); //输出:["早餐", "午餐", "晚餐", "夜宵"]
console.log(slicedArray); //输出:["午餐", "晚餐"]

var splicedArray = myArray.splice(1, 2); //删除从索引1开始的2个元素,并返回被删除元素的数组
console.log(myArray); //输出:["早餐", "夜宵"]
console.log(splicedArray); //输出:["午餐", "晚餐"]

七、js数组slice方法时间复杂度

时间复杂度是算法的一个性质,衡量的是执行程序所需的计算工作量。对于js数组的slice()方法,时间复杂度为O(n),其中n是需要返回的元素个数。

八、js数组排序

在JavaScript中,可以使用sort()方法对数组进行排序。排序操作可以用来提高对数组的遍历或查找操作的效率。

九、js数组方法

在JavaScript中,还有其他许多有用的数组方法,例如push()、pop()、shift()、unshift()、indexOf()和lastIndexOf()。

push()向数组末尾添加一个或多个元素。

pop()从数组末尾删除一个元素。

shift()从数组头部删除一个元素。

unshift()向数组头部添加一个或多个元素。

indexOf()查找一个指定元素在数组中第一次出现的位置。

lastIndexOf()查找一个指定元素在数组中最后一次出现的位置。

示例代码:


var myArray = ['苹果', '香蕉', '橙子'];
myArray.push('梨子');
console.log(myArray); //输出:["苹果", "香蕉", "橙子", "梨子"]

myArray.pop();
console.log(myArray); //输出:["苹果", "香蕉", "橙子"]

myArray.shift();
console.log(myArray); // 输出:["香蕉", "橙子"]

myArray.unshift('西瓜');
console.log(myArray); //输出:["西瓜", "香蕉", "橙子"]

console.log(myArray.indexOf('香蕉')); //输出:1

console.log(myArray.lastIndexOf('橙子')); //输出:2

tags: jsslice
声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。
10年以上业内强师集结,手把手带你蜕变精英
请您保持通讯畅通,专属学习老师24小时内将与您1V1沟通
免费领取
今日已有369人领取成功
刘同学 138****2860 刚刚成功领取
王同学 131****2015 刚刚成功领取
张同学 133****4652 刚刚成功领取
李同学 135****8607 刚刚成功领取
杨同学 132****5667 刚刚成功领取
岳同学 134****6652 刚刚成功领取
梁同学 157****2950 刚刚成功领取
刘同学 189****1015 刚刚成功领取
张同学 155****4678 刚刚成功领取
邹同学 139****2907 刚刚成功领取
董同学 138****2867 刚刚成功领取
周同学 136****3602 刚刚成功领取
相关推荐HOT