初识JavaScript之sort和slice方法

初识JavaScript之sort和slice方法

一、sort()方法

sort()方法用于数组的元素进行排序,并返回数组。默认的排序方法是根据字符串Unicode码点。

如果调用该方法时没有使用参数,及那个按字母顺序对数组进行排序,说的更精确点,是按照字符编码的顺序进行排序。要实现这一点,首先要把数组的元素都转换成字符串,以便进行比较。

但如果想按照其他标准进行排序,就需要提供比较函数,该函数要比较两个值,然后返回一个用于说明这两个值得相对顺序的数字。比较函数应该具有两个参数a和b,其返回值如下。

若a小于b,在排序后的数组中a应该出现在b之前,则返回一个小于0的值。

若a等于b,则返回0.

若大于b,则返回一个大于0的值。

例1:我们先创建一个数组,并直接用sort()方法进行排序:

 

 

输出:

 

 

注意,上面的代码没有按照数值的大小数字进行排序,要实现这一点,就需要使用一个排序函数:

 

 

输出:

 

 

这是升序排列,实现方法为:

function sortNumber(a,b) {

  return a-b;

}

如果想实现降序,方法为:

function sortNumber(a,b) {

  return b-a;

}

二、splice方法

splice()方法用于插入、删除、或替换数组元素。这种方法会改变原始数组。

语法:array.splice(index,howmany,iteml,......,itemX);

index:(必要元素)规定从何处添加/删除元素。该参数是开始插入或删除的元素的下标,必须是数字。

howmany:(必要元素)规定应该删除多少元素。必须是数字,但可以是“0”.如果未规定此参数,则删除从index开始到原数组结尾的所有元素。

item1,......,itemX(可选)表示要添加到数组中的新元素。

返回值:如果从数组中删除了元素,则返回的是含有被删除的元素的数组。

例2:

移除数组的第三个元素,并在数组第三个位置添加新元素:

var arr = ["soul","love","forgive","last"];

arr.splice(2,1,"trouble","angle");

结果为:soul,love,trouble,angle,last

posted @ 2021-10-27 20:46  来点宵夜  阅读(227)  评论(0)    收藏  举报