javascript的slice()与splice()方法

 (1)数组和String对象都有slice()方法。

//Array
var list = ['A','B','C','D','DS'];
console.log(list.slice(2,4));//截取后还是数组
//输出:["C", "D"] 
        
//String
var str = 'ABCSDASD';
console.log(str.slice(2,4));
//输出:CS

 (2)splice方法

var a = [1,2,3,4,5],
b = [1,2,3,4,5];
console.log(a.splice(2,1),a);//从数组中删除元素,会改变原数组
console.log(b.splice(2,0,'b'),b);//第二个参数设置为0,不会删除参数
console.log(b.splice(2,1,'b'),b);
//结果
//
[3] [1, 2, 4, 5] //[3] [1, 2, "b", 4, 5]

 应用:

        //从数组中随机取出一些元素
        //array 原始数组
        //require 需要的个数
        function getRadomArray(array,require){
            var arr = array.slice(0),//使用slice实现数组的拷贝
                result = [];
            
            for(var i=0;i<require;i++)
            {
                var ra = Math.floor(Math.random()*arr.length);
                result.push(arr.splice(ra,1)[0])
            }
            return result;
        }

 

posted on 2014-12-19 15:50  云贤力  阅读(285)  评论(0编辑  收藏  举报

导航