冒泡排序是依次比较相邻元素的大小使之有序,从相邻有序到整体有序。这里用到了数组遍历的两种方法:for(var item in arr)其中item表示数组下标;for(var item of arr) 其中item表示数组元素。使用console.log(arr); 表示输出数组,输出结果中的括号内为数组长度。
下面是可以直接运行的代码:
我这里使用不同的方法输出了三次数组,大家可酌情删减代码。
<script> //冒泡排序
'use strict'
var arr=[2,4,7,5,6,3,8,1,9,0]; //声明数组并赋值
for(var i=0;i<arr.length;i++){ //实现arr[i]之前的部分有序
for(var j=i;j<arr.length;j++){//实现相邻两元素左小右大
if(arr[i]>arr[j]) {//升序排列
//不使用临时变量交换变量的值
arr[i]=arr[i]+arr[j];
arr[j]=arr[i]-arr[j];
arr[i]=arr[i]-arr[j];
}
}
}
for(var item in arr){ //输出数组,无异常
console.log(arr[item]);
}
console.log(arr); //直接输出数组,括号内为数组长度
for(var item of arr){
//输出数组,dw提示有语法错误,但能正常输出
console.log(item);
}
</script>