一、定义:1)var arr=new Array();

加数据:arr[0]=1;

2)定义同时赋值:var arr=new Array(1,2,3,4,5);

3)调用:var arr=new Array();

arr.push(1);用.push调用

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

alert(arr[4]);

二、属性:1)arr.length:数组的长度

eg:var arr=new Array(1,2,3,4,5,6);

alert(arr.length);

arr.length;属性(国定)

arr.push:方法(不固定)

2)arr.indexOf:判断数组中是否存在输入的这个数据,若返回索引则存在,返回-1则不存在

eg:var arr=new Array(1,2,3,4,5,6);

var a=3;

alert(arr.indexOf(a));

二维数组:数组外面又套了一个数组

var arr=new Array(

var arr=new Array(1,2,3,4,5,6);

var arr=new Array(11,12,13,14,15,16);

);

三、遍历输出:1、for循环

var arr=new Array(10,20,11,14,18,30,50);

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

{

alert(arr[i]);

}

2、foreach:强类型中不用与数组,用于集合

arr int  集合遍历

数组索引叫做key,数组里面的值叫做value,key和value是成对存在的,叫做键值对

冒泡:比较的轮次是数组长度减一,比较的次数是数组长度减轮次

var arr=new Array(70,34,60,49,20,59,98,100);

var zj=0;

第一次for用来控制循坏轮数

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

{

for(var a=0;a<arr.length-i;a++)控制每轮比较次数;

{

if(arr[a]<arr[a+1])

{

arr[a]=zj;

arr[a+1]=arr[a];

zj=arr[a+1];

}

}

}

二分法:在一个数组中查找数据,找到数据所在位置的索引

var arr =new Array(1,2,3,4,5,6,7,8,9,10);

var a=3;

var maxd=arr.length-1;mind=0;

while(true){

var zjd=parseInt((maxd+mind)/2);

if(zjd==minx){

if(a==arr[zjd+1]){

alert(zjd+1);

break;

}

}

if(a==zjd){

alert(zjd);

break;

}else if(a>zjd){

mind=zjd;

}else{maxd=zjd;}

}

js数组及数组应用(冒泡和二分,遍历输出)的更多相关文章

  1. js二维数组与字符串

    1. 二维数组:数组中的元素,又引用了另一个数组对象 何时使用:只要保存横行竖列的数据, 具有上下级包含关系的数据, 创建二维数组: 1. var arr=[]; col arr[0]=[" ...

  2. JS数组追加数组采用push.apply的坑

    JS数组追加数组没有现成的函数,这么多年我已经习惯了a.push.apply(a, b);这种自以为很酷的,不需要写for循环的写法,一直也没遇到什么问题,直到今天我要append的b是个很大的数组时 ...

  3. JS Jquery去除数组重复元素

    js jquery去除数组中的重复元素 第一种:$.unique() 第二种: for(var i = 0,len = totalArray_line.length;i < len;i++) { ...

  4. 多动手试试,其实List类型的变量在页面上取到的值可以直接赋值给一个js的Array数组变量

    多动手试试,其实List类型的变量在页面上取到的值可以直接赋值给一个js的Array数组变量,并且数组变量可以直接取到每一个元素var array1 = '<%=yearList =>'; ...

  5. js中的数组

    上网查了一下,js中的数组包含的内容还真不少.先给出两个学习的链接: w3school链接:http://www.w3school.com.cn/js/js_obj_array.asp 博客园链接:h ...

  6. JS与PHP数组操作的不同

    JS与PHP数组操作的不同 1.JS 中向数组中添加元素,必须指定下标 2.php中向数组中添加元素,可以不指定下标(追加) 3.JS 中数组元素的下标,是连续 4.PHP中数组元素的下标,可以不连续 ...

  7. 关于 js 2个数组取差集怎么取

    关于 js 2个数组取差集怎么取? 例如求var arr1 = [1]; var arr2 = [1,2];的差集方法一: Array.prototype.diff = function(a) { r ...

  8. 有几数组表单,js怎么获得数组并动态相加输出到文本框

    有几数组表单,js如何获得数组并动态相加输出到文本框<input   name= "fee1[] "> <input   name= "fee2[] & ...

  9. JS数组追加数组采用push.apply的坑(转)

    JS数组追加数组没有现成的函数,这么多年我已经习惯了a.push.apply(a, b);这种自以为很酷的,不需要写for循环的写法,一直也没遇到什么问题,直到今天我要append的b是个很大的数组时 ...

随机推荐

  1. [codevs]1087麦森数

    题目 这个题在noiOJ上是分治专题,这个题包括了很多,求位数,高精度乘,快速幂. 那么单独把这个高精度拿出来做一个自定义函数即可 一.求位数 显而易见,既然是2进制的就是log2X,是10进制就是l ...

  2. Android系统--输入系统(十)Reader线程_核心类及配置文件深入分析

    Android系统--输入系统(十)Reader线程_核心类及配置文件深入分析 0. 前言 个人认为该知识点阅读Android源代码会不仅容易走进死胡同,并且效果并不好,前脚看完后脚忘记,故进行总结, ...

  3. [ext4]01 磁盘布局 - block分析

    ext4文件系统最基本的分配单元是"block"(块). block是由一组连续的sectors来组成,其大小介于1k~4K之间,当然不可能是任意值,只能是2的整数次幂个secto ...

  4. EMMC与RAND的区别

    作者:Younger Liu, 本作品采用知识共享署名-非商业性使用-相同方式共享 3.0 未本地化版本许可协议进行许可. EMMC与RAND的区别 说到两者的区别,必须从flash的发展历程说起,因 ...

  5. [大数据]-Elasticsearch5.3.1+Kibana5.3.1从单机到分布式的安装与使用<2>

    前言:上篇[大数据]-Elasticsearch5.3.1+Kibana5.3.1从单机到分布式的安装与使用<1>中介绍了ES ,Kibana的单机到分布式的安装,这里主要是介绍Elast ...

  6. PHP获取指定页面的指定内容

    在刚入手PHP的时候,经理让我自己做一个文章的管理系统为了方便管理微信端发的消息.除了简单的添加分类.管理分类.添加文章.管理文章,还有一个功能就是要从微信文章网址中拿到网址上的标题.作者以及发表时间 ...

  7. JAVA-Socket通信笔记

    JAVA - Socket 从开学到现在 也学了三个月时间的java了,一直在 在 语法和基本使用上周旋,井底之娃一枚. 这两天 有学长指点,花了两天的时间 学习了java多线程和socket的简单使 ...

  8. JS执行效率与性能提升方案

    如果是追加字符串,最好使用s+=anotherStr操作,而不是要使用s=s+anotherStr.如果要连接多个字符串,应该少使用+=,如 s+=a;s+=b;s+=c;应该写成s+=a + b + ...

  9. smarty的学习计划(2)

    连接数据库时,处理数据用原生态的PHP函数???NO,我们用phplib里的DB类,它文件小.加载速度快而备受人们喜爱. copy一个目录表: web(站点根目录) |-----libs(Smarty ...

  10. 深入理解Java虚拟机 自己编译JDK

    获取JDK源码 先明确OpenJDK和Sun/OracleJDK之间,以及OpenJDK 6.OpenJDK 7.OpenJDK7u和OpenJDK 8等项目之间是什么关系,这有助于确定接下来编译要使 ...