1.javascript创建数组时无需声明数组大小或者在数组大小变化时重新分配

2.javascript数组是无类型的

3.数组元素不一定要连续

4.针对稀疏数组,length比所有元素的索引都要大

5.数组的实现是经过优化的,用数字索引来访问数组元素要比访问常规对象属性要快得多

6.数组直接量允许有可选的结尾逗号,所以[,,]只有两个元素

创建数组的方法

1)对象直接量:var primes = [2,3,5,7,11];

2)调用构造函数Array():var a = new Array();

可以使用foreach()方法来遍历数组,执行某个函数

var data = [1,2,3,4,5];
var sumOfSquares = 0;
data.forEach(
function(x){
sumOfSquares += x*x;
}
);
sumOfSquares

多维数组

关于多维数组的一个简单例子

var table = new Array(10);
for(var i = 0,len = table.length;i<len ;i++){
table[i] = new Array(10);
} for(var j = 0 ,row = table.length;j < row;j++){
for(var k = 0,col = table[j].length; k < col;k++){
table[j][k] = j*k;
}
} var result = table[3][7];

关于数组的排序

如果要对一个数组进行不区分大小写的排序,看下面的例子:

var a = ["ant","Bug","cat","Dog"];
a.sort();
a.sort(
function(s,t){
var a = s.toLowerCase();
var b = t.toLowerCase();
if(a < b) return -1;
if(a > b) return 1;
if(a = b) return 0;
}
);

关于indexOf,如何使用indexOf来查找一个数组中某个内容出现的所有位置呢?

function findAll(a,x){
var results = [],
len = a.length,
pos = 0;
while(pos < len){
pos = a.indexOf(x,pos);
if(pos == -1) break;
results.push(pos);
pos = pos + 1;
}
return results;
}

关于比较两个数组的内容是否完全相等的方法:

function equalsArray(a,b){
if(a.length != b.length) return false;
for(var i = 0,len = a.length;i < len;i++){
if(a[i]!== b[i]) return false;
}
return true;
}

javascript基础知识-数组的更多相关文章

  1. Javascript基础知识总结一

    Javascript基础知识总结一 <!DOCTYPE html> <html> <head lang="en"> <meta chars ...

  2. 学习javascript基础知识系列第二节 - this用法

    通过一段代码学习javascript基础知识系列 第二节 - this用法 this是面向对象语言中的一个重要概念,在JAVA,C#等大型语言中,this固定指向运行时的当前对象.但是在javascr ...

  3. 学习javascript基础知识系列第三节 - ()()用法

    总目录:通过一段代码学习javascript基础知识系列 注意: 为了便于执行和演示,建议使用chrome浏览器,按F12,然后按Esc(或手动选择)打开console,在console进行执行和演示 ...

  4. C语言基础知识-数组和字符串

    C语言基础知识-数组和字符串 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.数组概述 在程序设计中,为了方便处理数据把具有相同类型的若干变量按有序形式组织起来的方式我们称为数组 ...

  5. JavaScript 基础知识 - BOM篇

    前言 本篇文章是JavaScript基础知识的BOM篇,如果前面的<JavaScript基础知识-DOM篇>看完了,现在就可以学习BOM了. 注意: 所有的案例都在这里链接: 提取密码密码 ...

  6. (转)JAVA AJAX教程第二章-JAVASCRIPT基础知识

    开篇:JAVASCRIPT是AJAX技术中不可或缺的一部分,所以想学好AJAX以及现在流行的AJAX框架,学好JAVASCRIPT是最重要的.这章我给大家整理了一些JAVASCRIPT的基础知识.常用 ...

  7. JavaScript基础知识整理

    只整理基础知识中关键技术,旨在系统性的学习和备忘. 1.在 JScript 中 null 和 undefined 的主要区别是 null 的操作象数字 0,而 undefined 的操作象特殊值NaN ...

  8. JavaScript基础知识从浅入深理解(一)

    JavaScript的简介 javascript是一门动态弱类型的解释型编程语言,增强页面动态效果,实现页面与用户之间的实时动态的交互. javascript是由三部分组成:ECMAScript.DO ...

  9. JavaScript基础知识梳理,你能回答几道题?

    在学习JavaScript的时候,总是这里学一点,那里学一点,很的很零星,很杂,没有很系统的去学习,感觉好像JavaScript的知识点都了解了,但是真正要说起来,又不知道从何说起! 最深刻的体会就是 ...

随机推荐

  1. spring的事物实现

    Spring的事物主要有三个接口 PlatformTransactionManager. 根据TransactionDefinition配置的事物信息创建事物 TransactionDefinitio ...

  2. 关于js原型继承

    js的每个类都有一个prototype对象 访问对象的属性时,会先访问到对象自身是否有定义这个属性 如果没有定义,就会去访问对象所属类型的prototype对象是否有此属性 原型继承就是把类型的pro ...

  3. JavaWeb 学习008-今日问题(非空验证尚未解决) 2016-12-2

    1. 学生模块list页面 不能正常跳转 说是找不到stuid属性,但是我在entity里面和数据库建表的属性就是stuid:Grade模块代码一样,却可以正常运行 这是什么问题? <c:for ...

  4. Java C# C语言中的占位符

    一般拼接一段字符串在编程中是很常见的事,下面简单做个总结: 什么是占位符?占位符就是先占住一个固定的位置,等着你再往里面添加内容的符号. 1.Java中处理方法: package com.amos; ...

  5. Java(多态)动手动脑

    1> 请看以下"变态"的类(参看示例ParentChildTest.java) 上述代码的特点是: 子类和父类定义了一模一样的字段和方法 运行以下测试代码 1. 上边的程序运 ...

  6. easyui treegrid逐步加载

    $("#bomStructureTable").treegrid({ url : "systemcontroller?id=10007",//首次查询路径 qu ...

  7. MAVEN解决Cannot change version of project facet Dynamic web module to 2.5

    我们用Eclipse创建Maven结构的web项目的时候选择了Artifact Id为maven-artchetype-webapp,由于这个catalog比较老,用的servlet还是2.3的,而一 ...

  8. LXD 2.0 系列(四):资源控制

    LXD 提供了各种资源限制.其中一些与容器本身相关,如内存配额.CPU 限制和 I/O 优先级.而另外一些则与特定设备相关,如 I/O 带宽或磁盘用量限制.-- Stéphane Graber 本文导 ...

  9. Object.assign()方法

    对象的扩展 1.ES6中,对象的属性和方法可简写:对象的属性值可不写,前提是属性名已经声明: var name = "zhangsan"; "; var obj = { ...

  10. 一个CURL

    CURL curl是利用url语法规则来传输文件,数据的工具,主要实现和服务器中网页,资源传输的工具.这里有一个关于感冒还没好的段子. 1.去phpini开启curl扩展,重启阿帕奇或者配置环境变量或 ...