概述
一、for循环遍历数组
问题一:将数组中的[ ‘张飞’ , ‘刘备’ , ‘关羽’ , ‘吕布’ ]全部输出
- for循环中 i 是计数器,从 0 开始,所以可以遍历数组中的所有元素。
- .length是数组的长度。
<!DOCTYPE html>
<html lang="en">
<head>
</head>
<body>
<script>
var arr = ['张飞' , '刘备' , '关羽' , '吕布'];
for(var i = 0 ; i < arr.length ; i++){
console.log(arr[i]);
}
</script>
</body>
</html>
问题二:求出数组var arr = [4 , 5 , 6 , 8 , 32];中的平均值
- 定义一个sum装数组中元素的和。
- 用for循环遍历数组在加在sum上。
- 定义一个average计算平均值。
<!DOCTYPE html>
<html lang="en">
<head>
</head>
<body>
<script>
// 思路:
// 1.定义一个sum装数组中元素的和
// 2.用for循环遍历数组在加在sum上
// 3.定义一个average计算平均值
var arr = [4 , 5 , 6 , 8 , 32];
var sum = 0 ;
var average = 0 ;
for(var i = 0 ; i < arr.length ; i++){
sum += arr[i];
}
average = sum / arr.length;
console.log(sum);
console.log(average);
</script>
</body>
</html>
问题三:求出数组var arr = [3 , 9 , 987 , 988 , 223 , 223 , 321];中的最大值
- 定义一个数组存放数据。
- 定义一个max来存放最大的值,max最原始的值就是数组的第一个值。
- 遍历数组元素跟max里面的值作比较,大于就赋值给max。
<!DOCTYPE html>
<html lang="en">
<head>
</head>
<body>
<script>
// 思路:
// 1.定义一个数组存放数据
// 2.定义一个max来存放最大的值,max最原始的值就是数组的第一个值
// 3.遍历数组元素跟max里面的值作比较,大于就赋值给max
// 4.输出最大值max
var arr = [3 , 9 , 987 , 988 , 223 , 223 , 321];
var max = arr[0];
for(var i = 0 ; i < arr.length ; i ++ ){
if(arr[i] > max) {
max = arr[i];
}
}
console.log(max);
</script>
</body>
</html>
二、数组新增元素的方法
两种方法
- 通过直接修改length长度的方法。
- 通过修改索引号,追加数组长度。
<!DOCTYPE html>
<html lang="en">
<head>
</head>
<body>
<script>
// 两个方法
// 1.通过直接修改length长度增加长度
var arr = [1,2,3];
arr.length = 5;
console.log(arr);//数组长度为五有两个空元素
// 2.通过修改索引号,追加数组元素
var arr1 = [1,2,3];
arr1[3] = 4;// 在索引下标为3的数组下面新增元素4
arr1[4] = 5;
console.log(arr1);
</script>
</body>
</html>
三、筛选数组(数组去重)的方法
问题一:将数组[2,0,6,1,77,0,52,0,25,7]中大于等于10的元素选出来放进新的数组。
方法一:
- 建立一个新数组newArr用来存放筛选出来的元素。
- 通过for循环遍历旧数组,通过if设置条件筛选元素。
- 把筛选出来的元素赋值给newArr[ 索引 ] = arr[ i ]。
- 新数组的索引用 j 表示,j = 0 , j++。
<!DOCTYPE html>
<html lang="en">
<head>
</head>
<body>
<script>
// 要求:将数组[2,0,6,1,77,0,52,0,25,7]中大于等于10的元素选出来放进新的数组
var arr = [2,1,6,1,77,0,98,0,22,7];
var newarr = [];
var j = 0 ;
for(var i = 0 ; i < arr.length ; i++){
if(arr[i]>=10){
newarr[j] = arr[i];
j++;
}
}
console.log(newarr);
</script>
</body>
</html>
方法二:
- 建立一个新数组newArr用来存放筛选出来的元素。
- 通过for循环遍历旧数组,通过if设置条件筛选元素。
- 把筛选出来的元素赋值给newArr[ length ] = arr[ i ]。
- 因为newArr刚开始是 0 元素,所以newArr[length]的索引是从 0 开始的。
<!DOCTYPE html>
<html lang="en">
<head>
</head>
<body>
<script>
// 要求:将数组[2,0,6,1,77,0,52,0,25,7]中大于等于10的元素选出来放进新的数组
var arr = [2,1,6,1,77,0,98,0,22,7];
var newarr = [];
var j = 0 ;
for(var i = 0 ; i < arr.length ; i++){
if(arr[i]>=10){
newarr[j] = arr[i];
j++;
}
}
console.log(newarr);
</script>
</body>
</html>
五、翻转数组
问题一:将数组arr = [ 1 , 2 , 3 , 4 , 5]翻转成 newArr = [ 5 , 4 , 3 , 2 , 1 ] 。
- 令for循环里面的 i = arr.length - 1 , 因为length是数组的个数,数组是从零开始的,所以在length基础上减一,就是数组中的最后一个元素,然后条件表达式令 i>=0 ,然后令 i 自减 。
- arr中最后一个数赋值给newArr的第一个也就是用newArr.length表示索引,从零开始。然后令 i 自减 。
<!DOCTYPE html>
<html lang="en">
<head>
</head>
<body>
<script>
// 问题:将数组arr = [ 1 , 2 , 3 , 4 , 5]翻转成 newArr = [ 5 , 4 , 3 , 2 , 1 ]
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>
</body>
</html>
六、交换两个变量
问题一:将num1 和 num2 的值交换。
- 声明一个空的变量temp,用来装num1的值。
- 把temp = num1; num1 = num2 ; num2 = temp;。
- 交换完成。
<!DOCTYPE html>
<html lang="en">
<head>
</head>
<body>
<script>
var num1 = '第一个';
var num2 = '第二个';
var temp;
temp = num1 ; //temp = '第一个';
num1 = num2 ; //第二个
num2 = temp ; //第一个
console.log(num1 , num2);
</script>
</body>
</html>
七、冒泡排序(下一章单独笔记)
最后
以上就是彩色小伙为你收集整理的js数组中的问题的全部内容,希望文章能够帮你解决js数组中的问题所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复