首页 > 代码库 > string和array变量用到的那些函数(下)
string和array变量用到的那些函数(下)
三、Array变量函数
1)arrayObjecr.push(newelement1,newelement2,... ...);
作用:向指定的数组对象的末尾添加一个或多个元素。该方法直接修改原数组,并返回新数组的长度。
该功能与arrayObject.unshift(newelement1,... ...)相对应。后者依次在数组的头部添加元素。
举例:
<script>
var arr = ["I","am","a","little","lovely","girl"];
var num = arr.push("cool");
document.write(arr); //输出I,am,a,little,lovely,girl,cool
document.write(num); //输出7
</script>
2)arrayObjecr.slice(start,end);
作用:从已有的数组中返回指定的数组。start指定选取数组的开头,当为负数时,则直接从末尾开始算起;end指定结束处的数组下标,但是返回时不包括end所对应的元素。end不作限制时,默认从start位置到数组结尾全部截取。
该方法不会改变改变原数组,仅仅返回一个新数组。
举例:
<script>
var arr = ["I","a","little","lovely","girl"];
document.write(arr.slice(2,4)); //输出little,lovely
document.write(arr); //输出I,am,a,little,lovely,girl 原数组不改变
</script>
3)arrayObjecr.splice(index,howmany,item1... ...);
作用:向数组对象中删除或者添加项目。index指定对原数组进行操作的位置;howmany指定删除的项目个数,为0时则不删除;item指定向数组中添加的项目,如果不填写,表示没有添加。
该方法会直接更改原数组,需要区别其和slice()函数的作用。
举例:
<script>
var arr = ["I","am","a","little","lovely","girl"];
document.write(arr.splice(4,0,"lala")); //输出I,am,a,little,lala,lovely,girl
document.write(arr.splice(4,2,"smart")); //输出I,am,a,little,smart,girl
document.write(arr); //输出I,am,a,little,smart,girl 原数组发生更改
</script>
4)var newArr=arrayObjecr.filter(function(){...});
作用:对数组对象中的每个元素执行function中的操作,返回true则保留该元素,返回false则不保留。
filter()方法不改变原数组
举例:
<script>
var arr = [2,4,5,6,8,9,11];
var arr1 = arr.filter(choose);
function choose(element){
if(element%2==0)
return true;
else
return false;
}
document.write(arr1); //输出2,4,6,8
document.write(arr); //输出2,4,5,6,8,9,11 原数组不变
</script>
5)arrayObjecr.sort(sortby());
作用:对数组进行排序。sortby是一个函数。函数中不指定参数,则默认按照字符编码(英文字母)排序;若不想指定参数,又想对数字进行排序,建议现将数字转换成字符串。
数值比较时,调用参数a和b。返回值<0,a在b前面;返回值>0,a在b后面。
该方法直接对原数组修改。
举例:
<script>
var arr = [55,66,22,88,33,11,99];
document.write(arr.sort(function(){
return a-b; //输出11,22,33,55,66,88,99 对数值进行从小到大排序,可直接返回参数a-b
}));
document.write(arr.sort(function(){
return b-a; //输出99,88,66,55,33,22,11 对数值进行从大到小排序,可直接返回参数b-a
}));
</script>
6)arrayObjecr.reverse();
作用:反转数组中元素的顺序。
该方法会直接改变原数组。
举例:
<script>
var str = "hello,world!";
var arr = str.split("");
arr.reverse();
document.write(arr.join("")); //输出!dlrow,olleh
</script>
string和array变量用到的那些函数(下)