一、JS数组

  JavaScript中的数组类似于Python的列表  

a = [11,22,33,44]

   常见功能: 

obj.length          数组的大小

obj.push(ele)       尾部追加元素
obj.pop() 尾部获取一个元素
obj.unshift(ele) 头部插入元素
obj.shift() 头部移除元素
obj.splice(start, deleteCount, value, ...) 插入、删除或替换数组的元素
obj.splice(n,0,val) 指定位置插入元素
obj.splice(n,1,val) 指定位置替换元素
obj.splice(n,1) 指定位置删除元素 obj.slice( ) 切片
obj.reverse( ) 反转
obj.join(sep) 将数组元素连接起来以构建一个字符串
obj.concat(val,..) 连接数组
obj.sort( ) 对数组元素进行排序

  1. length

  数组的长度 

a.length
4

  2. push

  尾部追加元素  

a.push(55)
5
a
(5) [11, 22, 33, 44, 55]

  3.pop

  尾部获取一个元素,并且删除  

a
(5) [11, 22, 33, 44, 55]
a.pop()
55
a
(4) [11, 22, 33, 44]

  4. unshift(ele)

  头部插入元素 

a
(4) [11, 22, 33, 44]
a.unshift(66)
5
a
(5) [66, 11, 22, 33, 44]

  5. shift()

  头部移除元素  

a
(5) [66, 11, 22, 33, 44]
a.shift()
66
a
(4) [11, 22, 33, 44]

  6.splice(start, deleteCount, value, ...) 

  插入、删除或替换数组的元素。start:起始位置,deleteCount:删除的个数,value:插入的值 

a
(4) [11, 22, 33, 44]
a.splice(1,0,77) // 在原本22的位置77
[]
a
(5) [11, 77, 22, 33, 44] a.splice(1,1,88) // 将77替换为88
[77]
a
(5) [11, 88, 22, 33, 44] a
(5) [11, 88, 22, 33, 44]
a.splice(3,1) //删除索引为3的数
[33]
a
(4) [11, 88, 22, 44]

  7. slice()

  切片,顾头不顾尾  

a
(4) [11, 88, 22, 44]
a.slice(1,3)
(2) [88, 22]

  8.join()

  将数组元素连接起来以构建一个字符串 

 a.join(":")
"11:88:22:44"

  9.concat(val,...)

  连接数组  

a = [1,2,3]
(3) [1, 2, 3]
b = [4,5,6]
(3) [4, 5, 6]
a.concat(b)
(6) [1, 2, 3, 4, 5, 6]

  10.sort( )

  排序 

a = [1,3,5,2,4,8]
(6) [1, 3, 5, 2, 4, 8]
a.sort()
(6) [1, 2, 3, 4, 5, 8]

二、字典

  定义:  

a = {"k1":"v1","k2":"v2"}
{k1: "v1", k2: "v2"}

  字典取值  

a = {"k1":"v1","k2":"v2"}
{k1: "v1", k2: "v2"}
a["k1"]
"v1"
a["k2"]
"v2"

  

三、for循环

  3.1、采用自身索引循环

  (1)数组循环 

a = [11,22,33,44]
for(var item in a){
console.log(a[item]);
}  

  

  (2)字典循环

  

  3.2 自增循环

  

四、While循环

  

JS--数组和字典的更多相关文章

  1. JS数组添加字典的方法

    var ary_RoleType = [];  //申明数组变量 for(var j = 0;j<treeData.length;j++){ if($.inArray(treeData[j].v ...

  2. 小兔JS教程(四)-- 彻底攻略JS数组

    在开始本章之前,先给出上一节的答案,参考答案地址: http://www.xiaotublog.com/demo.html?path=homework/03/index2 1.JS数组的三大特性 在J ...

  3. 页面循环绑定(变量污染问题),js面向对象编程(对象属性增删改查),js字符串操作,js数组操作

    页面循环绑定(变量污染问题) var lis = document.querySelectorAll(".ul li") for ( var i = 0 ; i < lis. ...

  4. 深入理解Js数组

    深入理解Js数组 在Js中数组存在两种形式,一种是与C/C++等相同的在连续内存中存放数据的快数组,另一种是HashTable结构的慢数组,是一种典型的字典形式. 描述 在本文中所有的测试都是基于V8 ...

  5. js数组学习整理

    原文地址:js数组学习整理 常用的js数组操作方法及原理 1.声明数组的方式 var colors = new Array();//空的数组 var colors = new Array(3); // ...

  6. 转→js数组遍历 千万不要使用for...in...

    看到一篇内容还不错,但是排版实在糟糕, 逼死强迫症患者啊,直接拉下去找原文连接,找到了,但是已经消失了···500错误... 第一次因为实在看不下去一篇博客的排版, 为了排版而转载... 转载地址:h ...

  7. js数组操作大全

    原文(http://www.cnblogs.com/webhotel/archive/2010/12/21/1912732.html) 用 js有很久了,但都没有深究过js的数组形式.偶尔用用也就是简 ...

  8. 窥探Swift之数组与字典

    说到数组和字典,只要是编过程的小伙伴并不陌生.在Swift中的数组与字典也有着一些让人眼前一亮的特性,今天的博客就来窥探一下Swift中的Array和Dictionary.还是沿袭之前的风格,在介绍S ...

  9. Objective-C中把数组中字典中的数据转换成URL

    可能上面的标题有些拗口,学过PHP的小伙伴们都知道,PHP中的数组的下标是允许我们自定义的,PHP中的数组确切的说就是键值对.而在OC我们要用字典(Dictionary)来存储,当然了Java用的是M ...

  10. js数组去重的4种方法

    js数组去重,老生长谈,今天对其进行一番归纳,总结出来4种方法 贴入代码前 ,先对浏览器Array对象进行支持indexOf和forEach的polyfill Array.prototype.inde ...

随机推荐

  1. flex布局时,内容区域自适应高度

    页面元素高度固定,中间的元素需要撑满屏幕,或者内容多时显示滚动条时,我们要把父元素设置为height:100vh <div class="parent"> <di ...

  2. Android里面安装windows系统

        安装前请确认以下条件:①:存储卡需要有大于302M的空间. 下载安装:1.下载文件并安装:①:下载地址:http://kuai.xunlei.com/d/hWIkAAIkJwAawgZUa3c ...

  3. beat冲刺(5/7)

    目录 摘要 团队部分 个人部分 摘要 队名:小白吃 组长博客:hjj 作业博客:beta冲刺(5/7) 团队部分 后敬甲(组长) 过去两天完成了哪些任务 ppt制作中 数据集标注 接下来的计划 制作p ...

  4. SqlServer中的dbo是什么意思

    出处:http://andylin02.iteye.com/blog/486296 SqlServer中的dbo是什么意思? DBO是每个数据库的默认用户,具有所有者权限,即DbOwner 通过用DB ...

  5. angularJS1笔记-(18)-$http及用angular实现JSONP跨域访问过程

    官网上的解释为: The $http service is a core AngularJS service that facilitates communication with the remot ...

  6. SQL中字符串截取、连接、替换等函数的用法

    一.SQL中SUBSTRING函数的用法1.功能:返回字符.二进制.文本或图像表达式的一部分2.语法:SUBSTRING ( expression, start, length )3.QL 中的 su ...

  7. VBA笔记(一)——基础配置

    开启VBA编程环境——VBE 方法一:按<Alt+F11>组合建 方法二:查看代码 宏设置 当然启用宏的设置方式不同,宏的启动方式也不一样. 首先打开“office 按钮”,选择“exce ...

  8. 理解 Delphi 的类(十一) - 深入类中的方法[8] - 抽象方法与抽象类

    //抽象方法类似与接口; 在没有接口的年代 Delphi 是用抽象方法来模拟接口的; 我想它最终会被接口替代. {下面就定义了两个抽象方法} TMyClass = class(TObject)   p ...

  9. Cannot create file"C:\Users\LML\AppData\Local\Temp\EditorLineEnds.ttr"。另一个程序正在使用此文件,进程无法访问。

    不能二次启动,每次开机第一次都ok,出于习惯,总是想试试第二次打开软件是否正常,结果不出所料,出现了“Cannot create file"C:\Users\LML\AppData\Loca ...

  10. Java的StringBuIlder扩容机制

    JDK 1.6中,扩容的源码是这样: void expandCapacity(int minimumCapacity) { int newCapacity = (value.length + 1) * ...