一、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. Daily Scrumming 2015.10.21(Day 2)

    今明两天任务表 Member Today’s Task Tomorrow’s Task 江昊 配置ruby与rails环境 配置mysql与数据库用户管理 配置apache2环境 学习rails Ac ...

  2. Java程序设计实验 实验五

    课程:Java程序设计实验   班级:1353  姓名:符余佳源  学号:20135321 成绩:                           指导教师:娄嘉鹏      实验日期:2015. ...

  3. java程序设计课程实验报告1

    北京电子科技学院(BESTI) 实     验    报     告 课程:Java程序设计   班级:1353       姓名:陈都  学号:20135328 成绩:             指导 ...

  4. 20172308 实验二《Java面向对象程序设计 》实验报告

    20172308 2017-2018-2 <程序设计与数据结构>实验2报告 课程:<程序设计与数据结构> 班级: 1723 姓名: 周亚杰 学号:20172308 实验教师:王 ...

  5. 对cnblogs.com的用户体验

    1.你是什么样的用户, 有什么样的心理, 对cnblogs 的期望值是什么? 我们是计算机专业学生,是奔向神奇的代码世界的旅人.希望在cnblogs上找到自己感兴趣的技术,并学到更多的知识,提升自己的 ...

  6. 冲刺One之站立会议5 /2015-5-18

    2015-5-18 服务器部分大体已经完工,现在我们主要是在把登陆界面和服务器组装起来,这个过程是很让人头痛的,以为其中涉及到了很多网络协议.网络编程的知识,由于之前我们没有接触过所以实现起来会觉得很 ...

  7. 解决Cygwin编译cocos2dx 遇到的 error: 'UINT64_C' was not declared in this scope 问题

    环境工具:Win10.VS2013.cocos2d-x-2.2.6.Cygwin.ADT 问题来源:写了一个小游戏,VS2013上运行成功,就尝试着打包apk,项目导入到ADT里面,添加了cocos2 ...

  8. 在onResume()中调用getIntent()得不到Extra的问题

    之前 想做activity间的传值,注意 不是 startActivityforResult的那种, 在启动了多层activity再次启动activity想进入到singleTask的MainActi ...

  9. week4b:个人博客作业

    下面是week4做程序的过程. 1.在做之前先做客户需求,要求使用的使用mul图. 自己第一次听到这个名字,网上查UML为, http://www.cnblogs.com/wangkangluo1/a ...

  10. Internet History, Technology and Security (Week 3)

    Week 3 History: The Web Makes it Easy to Use Welcome to week 3! This is our fourth and final week of ...