每日一题
data:2021-01-02
数组操作:
数组元素内部方法:
push()方法
在元素最后一位后面添加一个或者多个,调用方式如下://直接操作元素 arr = [1,2] function add(arr,item){ arr.push(item); } add(arr,3) //输出 [1,2,3]
习题:
//返回新的移除了和item值相等的元素 function remove(arr, item) { let newarr = []; for(let i=0;i<arr.length;i++){ if(arr[i]!=item){ newarr.push(arr[i]); } } return newarr; }
splice()方法
在元素的某一位置增加/删除元素
参数(index,howmany,item1,item2...)- index: 删除元素或者添加元素的位置
- howmany: 若该值为0 则不删除元素 否则就将删除index位置之后的howmany个元素
- item: 添加或者删除元素的值
//删除位置为2之后的2个元素 function(arr,item){ arr = [1,2,3] arr.splice(2,2) return arr; } //输出结果为:[1]
习题//在元数组上进行操作 function removeWithoutCopy(arr, item) { for(let i=0;i<arr.length;i++){ remove = arr.indexOf(item) arr.splice(remove,1) } return arr; }
unshift():头部添加
arr = [2,3] function headadd(arr,item){ arr.unshift(item); } headadd(arr,1) //得到数组:[1,2,3]
数组的浅拷贝:slice()方法
function append(arr, item) { var narr = arr.slice(0); narr.push(item); return narr; } //获得一个和原数组一样的数组