1.数组方法

/**
* join(str)
* 将数组元素转换为字符串并使用参数中的字符串将各字符串链接起来
*/
var a = [1, 2, 3];
a.join(); // "1,2,3"
a.join(' '); // "1 2 3"
a.join(''); // "123"
var b = new Array(10); //长度为10的空数组
b.join('-'); // "---------":9个连字号组成的字符串 /**
* reverse()
* 将数组中的元素顺序颠倒,返回逆序数组,且这个过程也改变调用的数组本身
*/
var a = [1, 2, 3];
a.reverse.join(); // "3,2,1",并且现在的a是[3,2,1] /**
* sort(fun)
* 对数组进行排序并返回该排序后的数组,且这个过程也改变调用的数组本身
*/
var a = [33, 4, 1111, 222];
a.sort(); // 字母表顺序:1111,222,33,4
a.sort(function(x, y){
return x - y;
}); // 数值顺序:4, 33, 222, 1111 /**
* concat()
* 创建并返回一个新数组,它的元素包括调用concat()的原始数组的元素和concat的每个参数
*/
var a = [1,2,3];
a.concat(4,5); //返回[1,2,3,4,5]
a.concat([4,5]); //返回[1,2,3,4,5]
a.concat([4,5],[6,7]); //返回[1,2,3,4,5,6,7]
a.concat(4, [5,[6,7]]); //返回[1,2,3,4,5,[6,7]] /**
* slice()
* 返回制定数组的一个片段或子数组。
*/
var a = [1,2,3,4,5];
a.slice(0,3); //返回[1,2,3]
a.slice(3); //返回[4,5]
a.slice(1,-1); //返回[2,3,4]
a.slice(-3,-2); //返回[3] /**
* splice()
* 从制定位置删除,插入数组元素。
*/
var a = [1,2,3,4,5];
a.splice(3); //返回[4,5],a是[1,2,3]
a.splice(1,1); //返回[2],a是[1,3]
a.splice(1,0,'a','b'); //返回[],a是[1,'a','b',3]
a.splice(1,2,[1,2],3); //返回['a','b'],a是[1,[1,2],3,3] /**
* push()
* 在数组尾部添加一个或多个元素,并返回数组新的长度
*/ /**
* pop()
* 在数组尾部删除一个元素,并返回删除的元素
*/ /**
* unshift()
* 在数组首部添加一个或多个元素,并返回数组新的长度
*/ /**
* shift()
* 在数组首部删除一个元素,并返回删除的元素
*/ /*---------以下是ECMAScript5新增的数组方法---------*/
/**
* forEach()
* 遍历数组元素
*/
var data = [1,2,3,4,5];
//计算数组元素的和
var sum = 0;
data.forEach(function(value) { sum += value; });
//为每个数组元素的值自加1
data.forEach(function(v, i, a) { a[i] = v + 1; }); /**
* map()
* 调用数组的每个元素传递给指定的函数,并返回一个新的数组,它包含该函数的返回值
*/
a = [1,2,3];
b = a.map(function(x) { return x*x; }); //b是[1,4,9] /**
* filter()
* 调用数组的每个元素传递给制定的函数,若函数返回值为true则表示筛选通过,最终返回一个筛选后的数组
*/
a = [5,4,3,2,1];
smallvalues = a.filter(function(x) { return x < 3; }); // [2,1] /**
* every() 和 some()
* 对数组进行逻辑判定,返回true或false,every()是取与,some()是取或
*/ /**
* reduce() 和 reduceRight()
* 具体看权威指南的158页
*/ /**
* indexOf() 和 lastIndexOf()
* 返回数组中具有给定值的元素的索引,效果同字符串的方法一样
*/ /**
* Array.isArray(arr)
* 判断对象是否是数组
*/

  

JavaScript基本概念(数组)的更多相关文章

  1. javascript 详解数组

      概念 数组创建 数组读写 数组 VS. 一般对象 相同点 不同点 稀疏数组 数组的length属性 元素增删 数组迭代 二维数组 数组方法 Array.prototype.join Array.p ...

  2. JavaScript中对数组和数组API的认识

    JavaScript中对数组和数组API的认识 一.数组概念: 数组是JavaScript中的一类特殊的对象,用一对中括号“[]”表示,用来在单个的变量中存储多个值.在数组中,每个值都有一个对应的不重 ...

  3. JavaScript中的数组和字符串

    知识内容: 1.JavaScript中的数组 2.JavaScript中的字符串 一.JavaScript中的数组 1.JavaScript中的数组是什么 数组指的是数据的有序列表,每种语言基本上都有 ...

  4. JavaScript的概念,引入,基本数据类型

    08.05自我总结 JavaScript 一.概念 JavaScript(下文我们会用简称JS来代替)是脚本编程语言,JS语言开发的文件是以.js为后缀,通过在html文件中引入该js文件来控制htm ...

  5. javascript中稀疏数组和密集数组

    密集数组 数组是一片连续的存储空间,有着固定的长度.加入数组其实位置是address,长度为n,那么占用的存储空间是address[0],address[1],address[2].......add ...

  6. 面试官:JavaScript如何实现数组拍平(扁平化)方法?

    面试官:JavaScript如何实现数组拍平(扁平化)方法? 1 什么叫数组拍平? 概念很简单,意思是将一个"多维"数组降维,比如: // 原数组是一个"三维" ...

  7. 前端开发:Javascript中的数组,常用方法解析

    前端开发:Javascript中的数组,常用方法解析 前言 Array是Javascript构成的一个重要的部分,它可以用来存储字符串.对象.函数.Number,它是非常强大的.因此深入了解Array ...

  8. JavaScript 基础回顾——数组

    JavaScript是无类型语言,数组元素可以具有任意的数据类型,同一个数组的不同元素可以具有不同类型.数组的元素设置可以包含其他数组,便于模拟创建多维数组. 1.创建数组 在JavaScript中, ...

  9. javascript里面的数组,json对象,动态添加,修改,删除示例

    <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...

  10. javascript中关于数组的一些鄙视题

    一.判断一个数组中是否有相同的元素 /* * 判断数组中是否有相同的元素的代码 */ // 方案一 function isRepeat1(arrs) { if(arrs.length > 0) ...

随机推荐

  1. 【搜索引擎Jediael开发4】V0.01完整代码

    截止目前,已完成如下功能: 1.指定某个地址,使用HttpClient下载该网页至本地文件 2.使用HtmlParser解释第1步下载的网页,抽取其中包含的链接信息 3.下载第2步的所有链接指向的网页 ...

  2. 使用jsonp实现ajax跨域请求

    Jsonp(JSON with Padding)是资料格式 json 的一种“使用模式”,可以让网页从别的网域获取资料. 由于同源策略,一般来说位于 server1.example.com 的网页无法 ...

  3. 学习《Javascript权威指南》的第二章笔记

    1.Javascript区分大小写,但是HTML不区分大小写 2.JS会忽略标识之间的空格,多数情况下也会忽视换行符,所以要采用 整齐.一致的编码风格 3.//用作结尾的注释,/* 和 */可以当跨行 ...

  4. wampserver php 设置时间

    php.ini 查找date.timezone = Europe/Paris 修改成亚洲地区 date.timezone = Asia/Shanghai

  5. python 调用shell或windows命令

    目前使用到的有两种方式:os.system()和os.popen() import os os.system('cd e:cjx') #调用后返回执行结果状态 如果想获得返回结果,则使用以下方式: i ...

  6. JS 禁止浏览器右键菜单和刷新

    <script language="javascript"> //禁止按键F5 document.onkeydown = function(e){ e = window ...

  7. 阅读express的感悟

    在github上看了半天的源码,也是云里雾里,勉强也算看完了,通过查看很多人的讲解也方便了我的理解,今天记录下来,也算是做个笔记. 进入express的源码文件里我们可以看到8个文件:middlewa ...

  8. android TextView EditTextView一些技巧使用 (视图代码布局)

    android TextView 是最常用的控件 可以用作普通的显示,还可以用作有显示文字的按钮,用作有显示图片的图文组合 1. 图文组合 xml 中: <TextView android:id ...

  9. Visual Studio 2015 Update 3 RC 候选预览版粗来了

    .Net 基金会 http://www.dotnetfoundation.org/ 更新的真快,刚打完2的补丁包,3就粗来了............ https://www.visualstudio. ...

  10. .NET设计模式系列文章

    原文地址:http://terrylee.cnblogs.com/archive/2006/06/01/334911.html 最初写探索设计模式系列的时候,我只是想把它作为自己学习设计模式的读书笔记 ...