初识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) {
}
二、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
浙公网安备 33010602011771号