javascript 一02数组
2021-03-08 02:31
标签:rds ber some 字符编码 应该 转化 ike wan ret 浅拷贝并没有将一个数组的指向改变,当numer[0] 栈内存改变后,numbers [0]因为指向没有改变,所以numbers [0]的值也会变。 深拷贝可以使用copy方法来复制一个数组 如果是要进行将所有项进行输出,我们需要循环,或者forEach map方法会将数组中的没有一个元素都给定一个新的元素数组, sort() 是按照字符编码的顺序进行排序。首先应把数组的元素都转换成字符串,以便进行比较。 若 a 小于 b,在排序后的数组中 a 应该出现在 b 之前,则返回一个小于 0 的值。 // 应用,例如我们一个数组里面有张三,李四,王二狗三人的个人信息,现在要按照年龄排序 javascript 一02数组 标签:rds ber some 字符编码 应该 转化 ike wan ret 原文地址:https://www.cnblogs.com/zhang-chouchou/p/14210034.html数组
创建一个数组
var arry = [];
var arry = [‘数据1‘,‘数据2‘,‘数据3‘,‘数据4‘,‘数据5‘]
// -------
var arry = new Array()
var arry = new Array(1,2,3,4)
// -------
//判断是否是数组
console.log(Array.isArray(arry))
数组的添加
var arr = [1,2,3,4]
// 在末尾添加一个新的元素,
arr[arr.lenght] = 5
// 或者 push
arr.push(6,7)
// 在首位添加一个新元素
arr.unshift(-1)
数组的删除
arr.pop();
//删除数组中的第一值
arr.shift();
// 根据下标进行删除
arr.splice(5,3)
//索引为5后的三个元素删除
arr.splice(5,0 ,2,3,4)
从索引5插入元素,2,3,4。0代表插入,splice(数组的角标,删除长度,.... 添加的元素 )
字符串与数组的相互转化
split
var text = "如果每小时说一句情话令我词穷大概需要大概317年";
var words = text.split("");
for (var i = 0; i
join()
toString()
var names = ["David", "Cynthia", "Raymond", "Clayton", "Mike", "Jennifer"];
var namestr = names.join();
console.log(namestr);
// name.toString();
浅拷贝AD深拷贝
var numer = [];
for (var i = 0; i
function copy(arry1,arry2){
for(var i = 0; i
数组合并
var arryData1 = [1,2,3,4]
var arryData2 = [5,6,7,8]
var data = arryData1.concat(arryData2)
数组的迭代
var number = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]
var isEver = function (x){
// 如果值为2的倍数就返回true
console.log(x)
//否则就返回false
return (x % 2 == 0)
}
//every方法会迭代数组中的每个元素,直到返回false
// number.every(isEver)
// some 方法会将数组中的每一个元素都进行一次迭代。直到函数返回true:
// number.some(isEver);
numbers.forEach(function(x){
console.log((x % 2 == 0));
});
//方法一
var myMap = numbers.map(isEven);
// 方法二
var evenNumbers = numbers.filter(isEven);
filter对数组中的每一项运行给定函数,返回该函数会返回true的项组成的数组排序
var arry = [1,2,3,4,5,6,7,8,9]
// 反序输出数组
arry.reverse()
sort() 方法用于对数组的元素进行排序
var arry= [1,2,3,4,5,6,7,11,15]
console.log(arry.sort()) //[1, 11, 15, 2, 3, 4, 5, 6, 7]
// 我们将创建一个数组,并按字母顺序进行排序:var arryName = [
‘ZhangSan‘,
‘LiSi‘,
‘WangErXiao‘,
‘LiErGou‘,
GouDan‘
];
console.log(arryName.sort())
// ["GouDan", "LiErGou", "LiSi", "WangErXiao", "ZhangSan"]
若 a 等于 b,则返回 0。
若 a 大于 b,则返回一个大于 0 的值。var arry= [1,22,3,4,51,96,7,11,15]
function compare(a, b) {
if (a b) {
return 1;
}
// a必须等于
return 0;
}
arry.sort(compare); //[1, 3, 4, 7, 11, 15, 22, 51, 96]
var arry = [
{ name: "ZhangSan", age: 18 },
{ name: "LiSi", age: 35 },
{ name: "WangErXiao", age: 30 },
];
function compare(a, b) {
if (a.age b.age) {
return 1;
}
// a必须等于
return 0;
}
console.log(arry.sort(compare));
// 0: {name: "ZhangSan", age: 18} 1: {name: "WangErXiao", age: 30} 2: {name: "LiSi", age: 35}
搜索
var arry = [1,2,3,4,5,6,7,8,9,10];
var index = arry.indexOf(10);
console.log(index,‘返回下角标‘)
对象数组