数组

创建数组

 A.通过构造函数创建数组

   *    a): var arr=new Array();//定义一个空数组,无长度的空数组。
* b):var arr1=new Array(num);
* 当Array()构造函数中只有一个"数值"时,表示创建一个长度为num的数组,且数组中每一个元素的值都为空,(取值时,值为undefined);
* c):var arr1=new Array(val1,val2,…………);
*/
var arr=new Array();
var arr1=new Array(5);
var arr1_1=new Array('huskyuncle');
var arr1_2=new Array('123');
var arr2=new Array(23,"abc","zzxcv",123);

B.字面量创建数组

创建空数组
var arr6 = []; 创建只有一个元素值为10的数组
var arr7 = [10]; 创建含有多个元素的数组
var arr8 = [10,20,"hello"];

访问数组

通过制定数组名及索引,访问某个元素

(索引是从0开始有序排列的自增的数值)

arr8[0]

赋值

arr[1]=30

数组操作方法

push()  向数组的末尾添加一个或多个元素,返回新的长度  //arr.push(new_val);

unshitf() 向数组的开头添加一个或多个元素,返回新的长度  //

arr.pop()   从数组的尾部(删除)弹出一个元素,返回(删除)弹出的元素
arr.shift()    从数组的头部(删除)弹出一个元素,返回(删除)弹出的元素
splice(index,count,item1,item2,……)  向(从)数组中添加(删除)元素,然后返回被删除的元素
index --必选参数,从指定的位置(下标|索引)操作数组
 count --必选参数 操作元素的 数量
item1,……,itemX 可选参数 ,向数组中新增的项目
concat()   用于连接两个或多个数组组成一个新的数组
join(分隔符)   将数组的每个元素以指定的分隔符连接起来拼接为一个字符串

var res3=arr1.join('&');
var res4=arr2.join();
var res5=arr2.join('');

数组元素用整个数组的名字和它自己在数组中的顺序位置来表示。例如,a[0]表示名字为a的数组中的第一个元素,a[1]代表数组a的第二个元素,以此类推。

双层嵌套循环
  在一个循环语句中包含另一个循环
for(条件){
  for(条件){
}
}
冒泡排序 一种简单的排序算法
原理:比较相邻的元素,如果第一个大于第二个就交换位置,然后对每一对都做相同的比较最后按照从大到小或从小到大排序,  持续比较直到没有数字
function bubbleSort(arr) {
var len = arr.length;
for (var i = 0; i < len - 1; i++) {
for (var j = 0; j < len - 1 - i; j++) {
if (arr[j] > arr[j+1]) { // 相邻元素两两对比
var temp = arr[j+1]; // 元素交换
arr[j+1] = arr[j];
arr[j] = temp;
}
}
}
return arr;
}

二维数组

本质上是以数组作为数组元素的数组,即 ‘数组的数组’

 

JavaScript基础4的更多相关文章

  1. JavaScript基础

    JavaScript基础 JavaScript是一门编程语言,浏览器内置了JavaScript语言的解释器,所以在浏览器上按照JavaScript语言的规则编写相应代码之,浏览器可以解释并做出相应的处 ...

  2. 一步步学习javascript基础篇(0):开篇索引

    索引: 一步步学习javascript基础篇(1):基本概念 一步步学习javascript基础篇(2):作用域和作用域链 一步步学习javascript基础篇(3):Object.Function等 ...

  3. 前端之JavaScript基础

    前端之JavaScript基础 本节内容 JS概述 JS基础语法 JS循环控制 ECMA对象 BOM对象 DOM对象 1. JS概述 1.1. javascript历史 1992年Nombas开发出C ...

  4. 一步步学习javascript基础篇(3):Object、Function等引用类型

    我们在<一步步学习javascript基础篇(1):基本概念>中简单的介绍了五种基本数据类型Undefined.Null.Boolean.Number和String.今天我们主要介绍下复杂 ...

  5. Javascript基础回顾 之(三) 面向对象

    本来是要继续由浅入深表达式系列最后一篇的,但是最近团队突然就忙起来了,从来没有过的忙!不过喜欢表达式的朋友请放心,已经在写了:) 在工作当中发现大家对Javascript的一些基本原理普遍存在这里或者 ...

  6. Javascript基础回顾 之(二) 作用域

    本来是要继续由浅入深表达式系列最后一篇的,但是最近团队突然就忙起来了,从来没有过的忙!不过喜欢表达式的朋友请放心,已经在写了:) 在工作当中发现大家对Javascript的一些基本原理普遍存在这里或者 ...

  7. Javascript基础回顾 之(一) 类型

    本来是要继续由浅入深表达式系列最后一篇的,但是最近团队突然就忙起来了,从来没有过的忙!不过喜欢表达式的朋友请放心,已经在写了:) 在工作当中发现大家对Javascript的一些基本原理普遍存在这里或者 ...

  8. JavaScript 基础回顾——对象

    JavaScript是基于对象的解释性语言,全部数据都是对象.在 JavaScript 中并没有 class 的概念,但是可以通过对象和类的模拟来实现面向对象编程. 1.对象 在JavaScript中 ...

  9. javascript基础01

    javascript基础01 Javascript能做些什么? 给予页面灵魂,让页面可以动起来,包括动态的数据,动态的标签,动态的样式等等. 如实现到轮播图.拖拽.放大镜等,而动态的数据就好比不像没有 ...

  10. javascript基础02

    javascript基础02 1.数据类型 数据类型的描述在上篇的扩展中有写到链接 由于ECMAScript数据类型具有动态性,因此的确没有再定义其他数据类型的必要.这句话很重要. 如果以后再数据类型 ...

随机推荐

  1. jquery serialize()函数用法

    jquery serialize()函数用法<pre><html><head><script type="text/javascript" ...

  2. Hadoop4-HDFS分布式文件系统原理

    一.简介 1.分布式文件系统钢结构 分布式文件系统由计算机集群中的多个节点构成,这些节点分为两类: 主节点(MasterNode)或者名称节点(NameNode) 从节点(Slave Node)或者数 ...

  3. Linux下mysql的主从复制配置

    1.准备两台数据库环境,或者单台多实例环境,能正常启动和登录. 数据库的安装和多实例配置请参考https://www.cnblogs.com/qiuhom-1874/p/9757061.html. 2 ...

  4. 设置eclipse的字体大小

    window->preferences->general->Appearance->Colors and Fonts->basic->text font->点 ...

  5. python06-列表表达式、生成器表达式及其面试题、解耦简单介绍、函数递归相关

    目录: 一.列表推导式 二.生成器表达式 三.集合生成器 四.生成器面试题 五.解耦简单介绍 六.函数递归相关 一.列表推导式 需求:将[1,3,5]中的每个元素平方 正常思路: new_list = ...

  6. Git II: 操作远程Repository基础

    很久之前写过一篇Git: Setup a remote Git repository,留意到有前同事谈论到Git的一些操作,就把Git值得留意的操作补补全吧.这次,主要讲述Git远程Repositor ...

  7. PHP 从另一个角度来分析 Laravel 框架的依赖注入功能

    从根本上说,依赖注入不是让对象创建一个依赖关系,也不是让工厂对象去创建对象,而是将所需的依赖变成一个外部对象,使之成为一个"某些人的问题” 你为"某些人的问题”注入了类的依赖关系. ...

  8. 【SQL】安装后设置 sa账号登录

    1.windows身份验证登录管理员账户   2.找到sa账号双击  3.设置密码,启用 4.右键 属性 安全性   5.重启服务,sa账号登录   本地服务用  .     6.登录成功:

  9. Python3.7.1学习(六)RabbitMQ在Windows环境下的安装

    Windows下安装RabbitMQ 环境配置 部署环境 部署环境:windows server 2008 r2 enterprise(本文安装环境Win7) 官方安装部署文档:http://www. ...

  10. 关键路径法(Critical Path Method, CPM)

    1.活动节点描述及计算公式 通过分析项目过程中哪个活动序列进度安排的总时差最少来预测项目工期的网络分析. 产生目的:为了解决,在庞大而复杂的项目中,如何合理而有效地组织人力.物力和财力,使之在有限资源 ...