- 定义:
var arr = [1,3,5,7,9];
var arr = new Array(1,3,5,7,9);
使用上没有差别,[]性能会高一点点 - 一个属性,length
设置或获取数据的长度,如果设置的新长度小于原有长度,多余的数据会丢失。 - 使用原则:数组中只保存同一类型的数据
- 数组的常用方法
// 在数组最后添加新的数据,push()*****
// 把数组最后一个数据删除并返回删除的内容,pop()
ary3.push(255);
console.log('ary3 = ' + ary3);
var v = ary3.pop(); // 如果不关注删除了什么内容,可以不做赋值语句直接pop()
console.log('删除的数据内容是:' + v);
console.log('ary3 = ' + ary3);
// 在数组的最前面插入新的数据,unshift() ****
// 把数组的第一个数据删除,并返回删除的内容,shift()
ary3.unshift(0);
console.log('ary3 = ' + ary3);
v = ary3.shift();
console.log('删除的数据内容是:' + v);
console.log('ary3 = ' + ary3);
// 反转数组,reverse()
ary3.reverse();
console.log('ary3 = ' + ary3);
ary3.reverse();
// 获取数组的某一部分内容,slice(开始的下标,结束的下标),包括开始位置但不包含结束位置
var ary5 = ary3.slice(4, 7);
console.log('ary5 = ' + ary5);
// 插入、删除或替换数组的内容,splice(开始下标,数量[,value1,value2,...valuen])
ary3.splice(0, 2); // 删除2个数据,从下标0开始,删除到下标1为止
console.log('ary3 = ' + ary3);
ary3.splice(0, 3, 1, 2, 3, 4); // 替换下标0到下标2的内容为1,2,3,下标3的位置插入4
console.log('ary3 = ' + ary3);
// 排序,sort([function(){}])
var ary6 = [99, 76, 4, 18, 1, 50];
var ary7 = [99, 76, 4, 18, 1, 50];
console.log('排序前ary6 = ' + ary6);
ary6.sort(); //默认排序先比较第一个字符,如果第1个字符一样再比较后面的其他字符
ary7.sort(function(n1, n2){
return n1 - n2; // 从小往大排序
// return n2 - n1; // 从大往小排序
});
console.log('排序后ary6 = ' + ary6);
console.log('排序后ary7 = ' + ary7);
// 把数组转换为字符串,toString(),valueOf()
// 如果要数组和字符串做拼接时,如果没有显示写toString(),js会自动调用
// 如果直接输出数组变量,没有显示写valueOf(),js会自动调用该方法
console.log(ary3.toString());// ('ary3 = ' + ary3);//自动调用 toString()
console.log(ary3.valueOf()); // (ary);//自动调用 valueOf()
string的charAt方法
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>string的charAt方法</title>
</head>
<body>
</body>
<script>
var s = 'hello world';
console.log(s.charAt(4)); // string.(下标);// 得到指定位置的字符
</script>
</html>