通过修改length长度来实现新增数组元素
- 通过修改length长度来实现数组扩容的目的
- length属性是可读写的
<script>
var arr = ['red','green','yellow','blue']
arr.length=8;
console.log(arr);
console.log(arr[4]);
console.log(arr[5]);
console.log(arr[6]);
console.log(arr[7]);
</script>
其索引号 4 5 6 7 是空的 就是声明变量未给值 默认值就是undefined;
修改索引号 追加数组元素 或修改数组元素
var arr1 = ['red','green','yellow','blue']
arr1[4] = 'pink' ;
arr1[5] = 'hotpink' ;
arr1[0] = 'skyblue' ;//会替换掉原来值
console.log(arr1);
已有索引号 在追加 会直接覆盖
数组存放
// 数组存放
var arr2 = [];
for ( var i = 0;i < 10;i++){
arr2[i]=i+1; //不能直接给数组值名赋值 否则会换掉以前的元素 i+1表示 从1开始 而不是0
}
console.log(arr2);
数组筛选
- 先声明一个新的数组 用于存放新的数据
- 遍历原来的旧数组 找出需要的选项
- 依次追加给到新的数组
// 筛选数组
var s =[ 8,26,2,23,54,1,5,0,17];
var ne =[];
var j = 0;
for(var i = 0;i < s.length;i++){
if(s[i] > 10){
ne[j] = s[i];
j++;
}
}
console.log(ne);
方式二
// 筛选数组
var s =[ 8,26,2,23,54,1,5,0,17];
var ne =[];
for(var i = 0;i < s.length;i++){
if(s[i] > 10){
ne[ne.length] = s[i];
}
}
console.log(ne);
数组顺序交换
var arr2=[8,7,6,5,4,3,2,1];
var arr3 = [];
for(var i = arr2.length-1; i >= 0 ;i--){
arr3[arr3.length] = arr2[i]
}
console.log(arr3);
2 删除指定元素
var arr=[2,0,7,6,0,12,0,66,0,88]
var arr1 =[];
for(var i = 0; i < arr.length;i++){
if(arr[i]!==0){
arr1 [arr1.length]=arr[i];
}
}
console.log(arr1);
冒泡排序
<script>
//冒泡排序
var arr = [5,1,3,2,4,6,7,9,8];
for( var i = 0; i <= arr.length - 1;i++){ //外层循环趟数
for( var j = 0; j <= arr.length - i - 1;j++){ // 内循环 管每一趟的交换次数哦
if(arr[j] < arr[ j + 1]){
var temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
console.log(arr);
</script>
排序结果