JavaScript—array(数组)和String(字符串)
数组的声明
var arr=[1,2,3,4,5,6,7];
数组的访问
//访问数组的第一个元素
console.log(arr[0]);
数组的遍历
for(var i=0;i<arr.length;i++){
console.log(i);
}
输出结果:
"0"
"1"
"2"
"3"
"4"
"5"
"6
数组的方法
push:数组末尾添加一项
arr.push(3);
console.log(arr);
输出结果:1,2,3,4,5,6,7,3
在这里插入代码片
push:返回数组长度
*
方法一:
console.log(arr.length);
方法二:
console.log(NewArr);
php:删除数组末尾的元素,并返回删除元素
var ele=arr.pop();
console.log(ele,arr);
shift() 方法用于把数组的第一个元素从其中删除,并返回第一个元素的值。
var shi=arr.shift();
console.log(shi,arr);
unshift() 方法可向数组的开头添加一个或更多元素,并返回新的长度。
splice:从某一位开始删,删除几个,在该位插入新的元素
删除数组的第二和第三个元素
代码如下:
var ele=arr.splice(1,2);
console.log(arr);
删除数组的第二个元素和第三个元素,并在第二元素的位置插入100
代码如下:
var ele=arr.splice(1,2,100);
console.log(arr);
数组去重
要求:去掉数组中重复的元素
方法一:
数组和后一个元素和前一个元素进行比较,如果相同则删掉后一个元素,
因为删除了元素数组的长度的减1,所以每次循环的j需要减1
var arr=[1,2,3,2,4,3,3,2,5,6,2];
for(var i=0;i<arr.length-1;i++){
for(var j=i+1;j<arr.length;j++){
if(a[i]==a[j]{
arr.splice=(j,1);
j--;
}
}
}
console.log(arr);
数组的输出结果:
"1,2,3,4,5,6"
方法二:
把数组arr的元素依次比较插入新的数组newArr,
如果arr数组元素的索引为-1表示新的数组newArr里不存在这个元素,
则把该元素插入到新的数组newArr中
var arr=[1,2,3,2,4,3,3,2,5,6,2];
var newArr=[];
for(var i=0;i<arr.length;i++){
if(newArr.indexOf(arr[i])==-1){
newArr.push(arr[i]);
}
}
console.log(newArr);
新数组的输出结果:
"1,2,3,4,5,6"
数组排序
*方法一:*选择排序
var arr=[1,2,3,2,4,3,3,2,5,6,2];
for(var i=0;i<arr.length;i++){
for(var j=i+1;j<arr.length;j++){
if(arr[j]<arr[i]){
var c=arr[i];
arr[i]=arr[j];
arr[j]=c;
}
}
}
console.log(arr);
输出结果:
1, 2, 2, 2, 2, 3, 3, 3, 4, 5, 6
*方法二:*冒泡排序
var arr=[1,2,3,2,4,3,3,2,5,6,2,0,85,799];
for(var i=0;i<arr.length-1;i++){
for(var j=0;j<arr.length-i;j++){
if(arr[j]>arr[j+1]){
var temp=arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp;
}
}
}
console.log(arr);
输出结果:
[0, 1, 2, 2, 2, 2, 3, 3, 3, 4, 5, 6, 85, 799]