在数字和字符串中的实例方法不会改变其本身的值;
而数组对象可能会改变原数组的值;
从此延申出一个问题?
数组方法会改变原数组的是 (继承上篇博客 什么是静态方法 ———— 静态方法 - 的参数,需要把 变量本身,以实参的形式传进去)
会改变原数组的有: 1·push() 是用来在数组的末尾追加一个元素
2·pop() 是用来删除数组末尾的一个元素
3·unshift() 是在数组的最前面添加一个元素
4`shift() 是删除数组最前面的一个元素
5`splice() 是截取数组中的某些内容,按照数组的索引来截取
splice 的使用方法(哪一个索引位置开始,截取多少个,替换的新元素)
6·reverse 是用来反转数组使用的
7`sort 是用来给数组排序的
{
如果单独使用sort()来对函数操作 是进行的 ASCLL的值进行比较的
var arr2 = [20,13,11,8,0,11]; arr2.sort(); console.log(arr2); //[0,11,11,13,20,8] 先比较第一位 从小到大 第一位相同的时候在比较第二位 如例题中的 11, 11, 13 因为是对ascll码值-------------------------------------------------------------------------------------------------------------- 使用sort()来对数组进行升序排列(或降序排列的方法):
var arr2 = [20,13,11,8,0,11];
//按升序排列
arr2.sort(function(a,b){
//a,b表示相邻的两个元素
//若返回值>0,数组元素将按升序排列
//若返回值<0,数组元素将按降序排列
return a-b; 计算的acsll码值
});
console.log(arr2); //[0,8,11,11,13,20]; 新数组按升序排列
}
数组方法不会改变原数组的有 1`concat 是把多个数组进行拼接 var arr = [1, 2, 3]
var newArr = arr.concat([4, 5, 6])
console.log(arr) // [1, 2, 3]
console.log(newArr) // [1, 2, 3, 4, 5, 6]
2`join 是把数组里面的每一项内容链接起来,变成一个字符串 var arr = [1, 2, 3]
var str = arr.join('-') 这在引号里写啥都行 直接 ‘ ’ 空字符也ok
console.log(arr) // [1, 2, 3]
console.log(str) // 1-2-3
标签:11,arr,console,log,var,实例,数组,字符串 From: https://www.cnblogs.com/wfming/p/16617487.html