关于数组中的几个经典例题
冒泡排序法:
1.现有一个数组,子串都为数字,要求从小到大的方式排列数组并且打印出来!
var arr=[1,25,14,99,8,39];
参考代码块1:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=\, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
//冒泡排序法
var arr=[1,25,14,99,8,39];
for(var i=0;i<arr.length;i++){
// console.log(arr[i]);//遍历数组中每一项
var mid=0;
for(var j=0;j<arr.length;j++){
//第二层循环让它中的每一项都相互比较一下将小的值给到前面一个元素
if(arr[j]>arr[j+1]){
mid=arr[j];//将大的值给到中间变量
arr[j]=arr[j+1];//将小的值给到前面一个元素
arr[j+1]=mid;//将大的值给到后面一个元素
}
}
}
console.log(arr);//打印出数组
</script>
</body>
</html>
遍历数组的第二种方法:
1.现有一个数组要求遍历它的每一项!
var arr1=[“周杰伦”,“周华健”,“周笔畅”,“林俊杰”,“林依晨”,“林宥嘉”];
参考代码块2:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
//遍历数组的第二种方法
var arr1=["周杰伦","周华健","周笔畅","林俊杰","林依晨","林宥嘉"];
for(var key in arr1){
// console.log(key);
console.log(arr1[key]);
};
</script>
</body>
</html>
遍历2维数组:
1.现有一个2维数组要求遍历它的每一项!
var arr4=[
[“大中华”,“美利坚”,“英吉利”,“德意志”,“小日本”,“家里蹲”],
[1,2,3,4,5,6,7,8,9,0],
[“a”,“b”,“c”,“d”,“e”],
[true,false],
[null,undefined]
];
参考代码块3:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
// 遍历2维数组
var arr4=[
["大中华","美利坚","英吉利","德意志","小日本","家里蹲"],
[1,2,3,4,5,6,7,8,9,0],
["a","b","c","d","e"],
[true,false],
[null,undefined]
];
console.log(arr4);
for(var i=0;i<arr4.length;i++){
// console.log(arr4[i]);
for(var j=0;j<arr4[i].length;j++){
console.log(arr4[i][j]);
}
}
// 总结:参照2维数组的方法也可以遍历n维数组!
</script>
</body>
</html>
2.现有这样一个数组要求遍历它的每一项!
var arr3=[[“Vip”,1234567890],123,“abc”,“中国”,[“晴天”,“阴天”]];
参考代码块4 :
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
// 遍历2维数组
// 数组中包含数组和字符串、数字,字母.....
var arr3=[["Vip",1234567890],123,"abc","中国",["晴天","阴天"]];
for(var i=0;i<arr3.length;i++){ //第一层循环只能打印非数组元素
if(Array.isArray(arr3[i])==false){ //需要判断是否为数组
console.log(arr3[i]); //打印出非数组元素
}else if(Array.isArray(arr3[i])==true){
for(var j=0;j<arr3[i].length;j++){ //遍历数组元素中的数组中的每一项
console.log(arr3[i][j]); //打印结果
}
}
};
</script>
</body>
</html>