JavaScript 数组及冒泡排序

数组的定义方法:JS里数组可以理解为一种数据的组合,在JS里可以存多种类型的东西。

三种定义方式 设置数组变量名为arr。

1. var arr = Array();或var arr = new Array();

2. var arr = Array(‘a‘,‘b‘,‘c‘); 存入了字符串

3. var arr =[‘a‘,‘b‘,‘c‘];

对其赋值方式,以var arr = Array();为例

var arr = Array();

arr[0] = ‘a‘ ;

arr[1] = ‘b‘ ;

arr[2] = 999;

中括号内等于一个KEY,后面的就是其对应的值。

数组单个取值方式:以上面的设置为条件

alert(arr[2]);   可以直接取出他的值

数组遍历:用for循环可以遍历

arr.push(‘666‘);    ←  .push(‘666‘); 单词带括号是针对对象的方法

alert(arr.length);  ← .lengh是变量arr这个对象的属性,属性名称是长度

第一种遍历方法: 存的字符串取值不显示

for(var i=0;i<arr.length;i++){

alert(arr[i]);

}

第二种遍历方法:存的字符串取值可以显示

for(var i in arr) {

alert(arr[i]);

}

遍历查询:

var arr = [1,2,3,4,5,6,7,8]

var x = parseInt(prompt(‘请输入查询内容‘));

var status = 1;

for(var i = 0;i<arr.length;i++){      ←i是索引值,从0开始

if(arr[i] == x)

{

alert(i);

break;

}

}

 

变量交换:把两个变量的值互换

变量交换必须有一个临时的定义temp,不需要赋值

var a = 1;

var b = 2;

var temp;

temp = a;     先把a放到临时的temp里

a = b;        再把b放入a内

b = temp;     最后把temp里的a放入b,从而达到ab内的值互换

冒泡排序:打乱顺序的数字进行从小到大排序的运行方式

设定数组

var arr = [3, 2, 5, 1, 4];

第一轮比对,从第一个数字本身开始(本身索引位置是0)跟第二个数字进行比对,并且挨个跟后面的数字循环比对

0

for(var j = 1; j < arr.length; j++) {

if(arr[0] > arr[j]) {          ←自身索引位置数值大于J的索引值进行交换

var temp;

temp = arr[0];

arr[0] = arr[j];

arr[j] = temp;

}

}

第二轮比对,从第二个数字本身开始(索引位置是1)跟第三个数字进行比对,并且挨个跟后面的数字循环比对

1

for(var j = 2; j < arr.length; j++) {

if(arr[1] > arr[j]) {

var temp;

temp = arr[1];

arr[1] = arr[j];

arr[j] = temp;

}

}

第三轮比对,从第三个数字本身开始(索引位置是2)跟第四个数字进行比对,并且挨个跟后面的数字循环比对

2

for(var j = 3; j < arr.length; j++) {

if(arr[2] > arr[j]) {

var temp;

temp = arr[2];

arr[2] = arr[j];

arr[j] = temp;

}

}

得出方式结论:

i是索引值,从自身0开始,而且小于长度,然后递增

J是需要比对的数字,他是从i后面开始进行比对的

for(var i = 0; i < arr.length; i++) {

for(var j = i+1; j < arr.length; j++) {

if(arr[i] > arr[j]) {

var temp;

temp = arr[i];

arr[i] = arr[j];

arr[j] = temp;

}

}

}

得出公式后最后按顺序输出即可

for(var x in arr){

alert(arr[x]);

}

时间: 2024-11-08 15:24:08

JavaScript 数组及冒泡排序的相关文章

数组的冒泡排序

<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title></title> <script type="text/javascript"> //数组的冒泡排序 arr = [1, 4, 7, 2]; //a = 1, b = 4, c = 7, d = 2 //1. 2. 3. 4 //abcd四个人相遇了,他们要排队,身高

javascript数组顺序-----1冒泡的另一种比较好理解的写法

1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>javascript数组冒泡排序法</title> 6 </head> 7 <body> 8 <script> 9 var array = [7, 9, 22, 11, 12, 13, 5, 4, 3,

javascript数组的使用

<!doctype html> <html> <head> <meta charset="utf-8"> <title>无标题文档</title> </head> <script type="text/javascript"> //数组的基本用法 //javascript的元素的类型可以随意放 var arr1=[2,4,6,8,10]; var sum=0; for(v

我眼中的数组和冒泡排序

一维数组 数组是一个定长的容器,可以放相同类型的数据.数组中的元素可以是任何数据类型,包括基本数据类型和引用数据类型 专业解释 数组(Array)是一种线性表数据结构.它用一组连续的内存空间,来存储一组具有相同类型的数据.线性表,顾名思义,线性表就是数据排成像一条线一样的结构.每个线性表上的数据最多只有前和后两个方向.数组具有连续的内存空间和相同的数据类型 数组的声明 dataType[] arrayName;注:数组在声明时不能指定数组长度,即dataType[n] arrayName:是不合

0131 JavaScript数组中新增元素:修改数组索引、修改 length 长度、数组翻转

? 数组中可以通过以下方式在数组的末尾插入新元素: 数组[ 数组.length ] = 新数据; 1.5.1 通过修改 length 长度新增数组元素 可以通过修改 length 长度来实现数组扩容的目的 length 属性是可读写的 var arr = ['red', 'green', 'blue', 'pink']; arr.length = 7; console.log(arr); console.log(arr[4]); // undefined console.log(arr[5]);

javascript 数组的深度复制

javascript 数组的深度复制 一般情况下,使用 "=" 可以实现赋值.但对于数组.对象.函数等这些引用类型的数据,这个符号就不好使了. 1. 数组的简单复制 1.1 简单遍历 最简单也最基础的方式,自然是循环处理.示例: function array_copy(arr) { var out = [], i, len; if (out[i] instanceof Array === false){ return arr; } for (i = 0, len = arr.lengt

[前端JS学习笔记]JavaScript 数组

一.JavaScript数组的奇葩 大多数语言会要求数组的元素是同个类型, 但是JavaScript允许数组元素为多种类型. var arr = ["羽毛球", 666, {"json:":"666"}]; console.log(arr.length); 二.JavaScript 数组的两种声明 1.var arr = [元素]; var arr = ["坚持"]; 2.new Array(); 或者 var arr2 =

JavaScript 数组去重

JavaScript 数组去重 Why underscore (觉得这部分眼熟的可以直接跳到下一段了...) 最近开始看 underscore.js 源码,并将 underscore.js 源码解读 放在了我的 2016 计划中. 阅读一些著名框架类库的源码,就好像和一个个大师对话,你会学到很多.为什么是 underscore?最主要的原因是 underscore 简短精悍(约 1.5k 行),封装了 100 多个有用的方法,耦合度低,非常适合逐个方法阅读,适合楼主这样的 JavaScript

javascript数组去重算法-----4(另一种写法)

1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>javascript数组去重算法-----3</title> 6 </head> 7 <body> 8 <script> 9 var arr = [1,1,2,2,3,2,2,3,3,1,1,4,4,5