example array : [4,6,1,4,7,5,9,3]
更新使用JS中的sort()方法排序 :
代码如下
<script type="text/javascript">
var example = [4,6,1,40,7,5,9,3];
// var re = example.sort();
// 自带的sort()方法是按第一个字符排序的,因此会把7排在40后面,需要手动加一个函数,其参数是固定的,函数名可以自定
function sort_num(x,y){
return x-y; //x-y为升序,y-x为降序
}
// 因此在调用sort方法时,需要将sort_num函数传入,切记不是将sort_num()传入!
var re = example.sort(sort_num);
document.write(re);
</script>
—————————-分割线——————————
更新冒泡排序:
代码如下
<script type="text/javascript">
function sort_array(arr){
for (var i=0;i<arr.length-1;i++) { //外层循环控制循环的轮数
for (var j=0;j<arr.length-1-i;j++) { //内层循环控制这这一轮元素比较的次数,-i是因为每次比完后,靠右的元素均为较大值,不需再比较
if (arr[j]>=arr[j+1]) {
var temp = arr[j]; //定义临时变量,当作数组元素交换的容器
arr[j]= arr[j+1];//元素交换位置
arr[j+1] = temp;
}
}
}
return arr;
}
var example = [4,6,1,4,7,5,9,3];
document.write(sort_array(example));
</script>
——————————–分割线———————————–
JS代码算法如下:
<script type="text/javascript">
function sort_array(arr){
var temp; //定义临时变量,当作数组元素交换的容器
for (var i=0;i<arr.length-1;i++) { //外层循环控制需要比较的元素数量
for (var j=i+1;j<arr.length;j++) { //内层循环控制这个元素比较的次数
if (arr[i]>=arr[j]) {
temp = arr[j]; //元素交换位置
arr[j]= arr[i];
arr[i] = temp;
}
}
}
return arr;
}
var example = [4,6,1,4,7,5,9,3];
document.write(sort_array(example));
</script>
若有错漏,欢迎建议和指正.
如果您有更好的方式,期待与您的交流!