案例1:找出数组arr中大于10的元素,放到一个新数组newArr里
方法①:
<script>
var arr = [12, 3, 8, 5, 90, 22];//原数组
var newArr = [];//新数组
var j = 0;//新数组的索引
for (var i = 0; i < arr.length; i++) {
if (arr[i] > 10) {
//找到符合条件的元素
newArr[j] = arr[i];
j++;//新数组的索引+1
}
}
console.log(newArr);
</script>
方法②:
在数组的末尾插入新元素:数组[ 数组.length ] = 新数据;
<script>
var arr = [12, 3, 8, 5, 90, 22];
var newArr = []; //新数组
for (var i = 0; i < arr.length; i++) {
if (arr[i] > 10) {
//找到符合条件的元素
newArr[newArr.length] = arr[i];
}
}
console.log(newArr);
</script>
方法③:
在数组的末尾插入新元素: push()
<script>
var arr = [12, 3, 8, 5, 90, 22];
var newArr = []; //新数组
for (var i = 0; i < arr.length; i++) {
if (arr[i] > 10) {
newArr.push(arr[i]); //push()方法可以在数组末尾添加元素
}
}
console.log(newArr);
</script>
案例2:找出数组arr中值为非0的元素,放到一个新数组newArr里(实则就是数组去重)
<script>
var arr = [12, 0, 8, 0, 90, 22];
var newArr = []; //新数组
for (var i = 0; i < arr.length; i++) {
if (arr[i] != 0) {
//找到符合条件的元素
newArr[newArr.length] = arr[i];
}
}
console.log(newArr);
</script>
案例3:数组翻转
<script>
var arr = [1, 2, 3, 4, 5];
var newArr = []; //新数组
for (var i = arr.length - 1; i >= 0; i--) {
newArr[newArr.length] = arr[i];
}
console.log(newArr);
</script>
案例4:冒泡排序
<script>
var arr = [5, 4, 3, 2, 1];
for (var i = 1; i <= arr.length - 1; i++) {
//外循环:趟数=arr.length - 1
for (var j = 0; j <= arr.length - i - 1; j++) {
//内循环:比较次数=arr.length - 趟数,因为j从0开始,所以-1
if (arr[j] > arr[j + 1]) {
//此时结果从小到大顺序排列,如果改为<,则结果从大到小顺序排列
var temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
console.log(arr);
</script>