javascript基础知识-数组
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基础知识-数组的更多相关文章
- Javascript基础知识总结一
Javascript基础知识总结一 <!DOCTYPE html> <html> <head lang="en"> <meta chars ...
- 学习javascript基础知识系列第二节 - this用法
通过一段代码学习javascript基础知识系列 第二节 - this用法 this是面向对象语言中的一个重要概念,在JAVA,C#等大型语言中,this固定指向运行时的当前对象.但是在javascr ...
- 学习javascript基础知识系列第三节 - ()()用法
总目录:通过一段代码学习javascript基础知识系列 注意: 为了便于执行和演示,建议使用chrome浏览器,按F12,然后按Esc(或手动选择)打开console,在console进行执行和演示 ...
- C语言基础知识-数组和字符串
C语言基础知识-数组和字符串 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.数组概述 在程序设计中,为了方便处理数据把具有相同类型的若干变量按有序形式组织起来的方式我们称为数组 ...
- JavaScript 基础知识 - BOM篇
前言 本篇文章是JavaScript基础知识的BOM篇,如果前面的<JavaScript基础知识-DOM篇>看完了,现在就可以学习BOM了. 注意: 所有的案例都在这里链接: 提取密码密码 ...
- (转)JAVA AJAX教程第二章-JAVASCRIPT基础知识
开篇:JAVASCRIPT是AJAX技术中不可或缺的一部分,所以想学好AJAX以及现在流行的AJAX框架,学好JAVASCRIPT是最重要的.这章我给大家整理了一些JAVASCRIPT的基础知识.常用 ...
- JavaScript基础知识整理
只整理基础知识中关键技术,旨在系统性的学习和备忘. 1.在 JScript 中 null 和 undefined 的主要区别是 null 的操作象数字 0,而 undefined 的操作象特殊值NaN ...
- JavaScript基础知识从浅入深理解(一)
JavaScript的简介 javascript是一门动态弱类型的解释型编程语言,增强页面动态效果,实现页面与用户之间的实时动态的交互. javascript是由三部分组成:ECMAScript.DO ...
- JavaScript基础知识梳理,你能回答几道题?
在学习JavaScript的时候,总是这里学一点,那里学一点,很的很零星,很杂,没有很系统的去学习,感觉好像JavaScript的知识点都了解了,但是真正要说起来,又不知道从何说起! 最深刻的体会就是 ...
随机推荐
- mysql分表和表分区详解
为什么要分表和分区? 日常开发中我们经常会遇到大表的情况,所谓的大表是指存储了百万级乃至千万级条记录的表.这样的表过于庞大,导致数据库在查询和插入的时候耗时太长,性能低下,如果涉及联合查询的情况,性能 ...
- (转)myeclipse插件—SVN分支与合并详解【图】
svn作为版本控制软件被广泛用于众多公司的开发团队中,最多的场景就是一个项目上传svn后,一个组内的小伙伴在上边提交和更新代码以及解决冲突,其实这只是发挥了svn的很小的一部分功能. 先稍微介绍一下s ...
- C语言 断言 总结
转载: http://wenda.so.com/q/1378817559065638?src=140 assert宏的原型定义在<assert.h>中,其作用是如果它的条件返回错误,则终止 ...
- [C#][.net 4]Task 代码示例
using System; using System.Threading; using System.Threading.Tasks; using System.Windows.Forms; name ...
- ios 正则表达式之验证手机号、邮箱、身份证、银行卡
1.手机号 + (BOOL) IsPhoneNumber:(NSString *)number { NSString *phoneRegex1=@"1[34578]([0-9]){9}&qu ...
- PHP读取Excel数据写入数据库(包含图片和文字)
public function test(){ $exts = 'xlsx'; //导入PHPExcel类库,因为PHPExcel没有用命名空间,只能inport导入 import("Org ...
- LR连接oracle数据库-lr_db_connect
在Loadrunner中也提供了C对数据库操作的相关功能函数,以下这些数据库功能函数只能用于Web Services协议. lr_db_connect 连接数据库 lr_db_disconnect 断 ...
- 关于安装sql2012出现的netfx3功能问题
这个问题需要下载framework3.5即可继续正常安装,所以说低版本的framework也是有必要安装的
- C#之不借助第三变量交换两变量值
源码: 1 2 3 4 5 int n1=10, n2=20; n1 = n1 - n2; // -10 n2 = n1 + n2; // 10 n1 = n2 - n1 ...
- margin:0 auto 与 text-align:center 的区别
基本概念: 1.text-align: 属性规定元素中的文本的水平对齐方式; 该属性通过指定行框与哪个点对齐,从而设置块级元素内文本的水平对齐方式; 一般情况下设置文本对齐方式的时使用此属性.支 ...