js对数组对象的操作以及方法的使用
js对数组对象的操作以及方法的使用
如何声明创建一个数组对象: var arr = new Array(); 或者 var arr = [];
如何移除所有数组中数据?
arrayJson.dataList.splice(0,arr.length);
如何指定位置对数组对象的添加,如何将指定元素添加到数组中间位置?
/**
* 假设数组的长度值为偶数,如何将指定元素添加到数组中间位置。
*/
function array_middle_insert() {
var arr = ['1','2','3','4','5','6'];
if(0 == arr.length % 2) { //偶数
arr.splice(arr.length / 2,0,'中间添加');
}
//["1","2","3","中间添加","4","5","6","7"]
console.log(JSON.stringify(arr));
}
数组对象方法的是使用介绍: cancat()
/**
* concat:连接两个或者多个数组,并且返回该数组
* 语法:array.concat(object,object,......);
*/
function array_concat() {
var arr = [{index:'0'},{address:'1'}];
var arr_1 = [{index:'3'},{index:'4'}];
var newArr = arr.concat(arr_1);
//[{"index":"0"},{"address":"1"},{"index":"3"},{"index":"4"}]
console.log(JSON.stringify(newArr));
}
join()
/**
* join():通过指定字符对数据进行分割,返回字符串。
* jon(分隔符);
*/
function array_join() {
var arr = ['1','2','3'];
var str = arr.join('-');
//1-2-3
console.log(str);
}
pop()
/**
* pop():删除数组的最后一个对象,返回该删除元素的值
*/
function array_pop() {
var arr = [{index:'0'},{address:'1'}];
var pop_data = arr.pop();
//{"address":"1"}
console.log(JSON.stringify(pop_data));
//[{"index":"0"}]
console.log(JSON.stringify(arr));
}
push()
/**
* push:向数组末尾添加一个或者多个对象。
* array.push(newObject1,newObject2,.....);
*/
function array_push() {
//实例化一个数组对象
var arr = new Array();
var obj_1 = { index:'1', index:'2'};
var obj_2 = { index:'3', index:'3'};
arr.push(obj_1,obj_2);
//[{"index":"2"},{"index":"3"}]
console.log(JSON.stringify(arr));
}
shift()
/**
* shift():该方法用户删除数组的第一个对象,并返回删除的元素
*/
function array_shift() {
var arr = [{index:'0'},{address:'1'}];
var shift_data = arr.shift();
//{"index":"0"}
console.log(JSON.stringify(shift_data));
//[{"address":"1"}]
console.log(JSON.stringify(arr));
}
slice()
/**
* slice():从已知数组中返回指定选中的数据,该操作不会修改原数组的数据
* slice(start,end);
*/
function array_slice() {
var arr = ['1','2','3','4','5'];
var new_array = arr.slice(1,arr.length);
//["2","3","4","5"]
console.log(JSON.stringify(new_array));
//["1","2","3","4","5"]
console.log(JSON.stringify(arr));
}
sort()
/**
* sort():方法用户对数组的排序
* sort(sortby) sortby可选,必须是函数。如调用方法没有使用参数,则按字母顺序进行排序。
*/
function array_sory() {
var arr = [{index:'500'},{index:'40'},{index:'100'},{index:'50'}];
var new_array = arr.sort(function(a,b) {
var n1 = Number(a.index);
var n2 = Number(b.index);
return n1 - n2;
});
//[{"index":"40"},{"index":"50"},{"index":"100"},{"index":"500"}]
console.log(JSON.stringify(new_array));
}
splice()
/**
* 向数组中删除/添加对象,并返回被删除的元素。
* splice(index,count,item1,item2,......);
* index:规定删除/添加项目的起始位置,使用负数从数组的结尾处规定位置。
* count:规定要删除项目的数量
* item1,item2...:向项目中添加添加新的对象
*/
function array_splice() {
var arr = ['1','2','3'];
var new_array = arr.splice(0,2,'4','5');
//["1","2"]
console.log(JSON.stringify(new_array));
//["4","5","3"]
console.log(JSON.stringify(arr));
}
unshift()
/**
* 向数组开头添加一个或者多个元素,并返回新的长度。
*/
function array_unshift() {
var arr = [{index:'0'},{address:'1'}];
var obj_1 = {index:'2'};
var obj_2 = {index:'3'};
var length = arr.unshift(obj_1,obj_2);
//4
console.log(length);
//[{"index":"2"},{"index":"3"},{"index":"0"},{"address":"1"}]
console.log(JSON.stringify(arr));
}
toString():将数组转换成字符串,并返回该结果。不会改变原数组的数据。 toLocaleString():将数组装换成本地字符,并返回结果,用“,”分割。类似toString 方法。 reverse():该该方法颠倒数组的顺序
一下举栗声明json数组串较为复杂并且灵活的格式。
[
{
"dateMonth":"05",
"hopeMoney":"12000",
"data":[
{
"brickId":"1",
"brickYear":"2017-05-15",
"brickWeek":"星期二",
"brckInfo":[
{
"bringMoneyOrExpenditure":"5000",
"brickClass":"工资",
"brickIcon":"ion-ios-star-outline"
},
{
"bringMoneyOrExpenditure":"-2000",
"brickClass":"其他",
"brickIcon":"ion-ios-star-outline"
}
]
},
{
"brickId":"1",
"brickYear":"2017-05-02",
"brickWeek":"星期六",
"brckInfo":[
{
"bringMoneyOrExpenditure":"10000",
"brickClass":"工资",
"brickIcon":"ion-ios-star-outline"
}
]
}
]
},
{
"dateMonth":"04",
"hopeMoney":"12000",
"data":[
{
"brickId":"1",
"brickYear":"2017-04-15",
"brickWeek":"星期一",
"brckInfo":[
{
"bringMoneyOrExpenditure":"5000",
"brickClass":"工资",
"brickIcon":"ion-ios-star-outline"
}
]
}
]
}
]
js对数组对象的操作以及方法的使用的更多相关文章
- js变量作为数组对象的键值方法
js变量作为数组对象的键值方法,变量键值获取数组值 js也可以像php的数组一样用下标获取数组的值,方法是: var arr = {'key':'abc'}; var key = 'key'; con ...
- 基于原生JS封装数组原型上的sort方法
基于原生JS封装数组原型上的sort方法 最近学习了数组的原型上内置方法的封装,加强了用原生JS封装方法的能力,也进一步理解数组方法封装的过程,实现的功能.虽然没有深入底层,了解源码.以下解法都是基于 ...
- js 判断数组包含某值的方法 和 javascript数组扩展indexOf()方法
var questionId = []; var anSwerIdValue = []; ////javascript数组扩展indexOf()方法 Array.prototype.indexOf ...
- js中数组去重的几种方法
js中数组去重的几种方法 1.遍历数组,一一比较,比较到相同的就删除后面的 function unique(arr){ ...
- Numpy数组对象的操作-索引机制、切片和迭代方法
前几篇博文我写了数组创建和数据运算,现在我们就来看一下数组对象的操作方法.使用索引和切片的方法选择元素,还有如何数组的迭代方法. 一.索引机制 1.一维数组 In [1]: a = np.arange ...
- js Array数组对象常见方法总结
Array对象一般用来存储数据. 其常用的方法包括: 1.concat()方法 concat() 方法用于合并两个或多个数组.它不会更改现有数组,而是返回一个新数组. 例如: var arr1=[1, ...
- js中数组对象去重的方法
var arr = [{ key: '01', value: '乐乐' }, { key: '02', value: '博博' }, { key: '03', value: '淘淘' },{ key: ...
- js 中数组对象的定义赋值 以及方法
1.定义数组 var m=new Array(); var n=[]; 2.数组的赋值(两种) A. var m=new Array(2); 一个值表示数组length var m=new Array ...
- js array数组对象操作方法汇总
--------------------------更新自2018.6.11 js 数组对象操作方法如下: 1. 创建数组 var array1 = [1,2] //方法一 var array2 = ...
随机推荐
- Struts2学习:struts.xml引入自定义的xml文件
随着项目代码的增多,用一个struts.xml来管理所有功能模块的Action未免显得臃肿且结构不清晰,因此可以根据实际的功能划分,将各模块的Action放在自定义的xml文件中,再引入struts. ...
- RocketMQ源码分析:(一)安装与案例演示
环境: Windows 暂时理解的功能图,不定时改动: 1. 克隆rocketmq代码 git clone git@github.com:apache/rocketmq.git 2. 进入rocket ...
- 安全测试7_Web安全在线工具
1.搜索引擎语法简单讲解:(实际上就是搜索引擎的高级搜索) 类似百度:可以看到下图我们是想在指定站点搜索包含login的页面,搜索语法为site:(testphp.vulnweb.com) " ...
- ES6学习笔记<一> let const class extends super
学习参考地址1 学习参考地址2 ECMAScript 6(以下简称ES6)是JavaScript语言的下一代标准.因为当前版本的ES6是在2015年发布的,所以又称ECMAScript 2015:也 ...
- C program basic
郝人牛语 入门最基本的方法就是从C语言入手. 当你成为C语言的高手,那么你很容易进入到操作系统的平台里面去:当你进入到操作系统的平台里去实际做程序时,就会懂得进行调试:当你懂得调试的时候,你就会发现能 ...
- HashMap扩容机制
1.什么是resize: resize就是重新计算容量:当我们不断的向HashMap对象里不停的添加元素时,HashMap对象内部的数组就会出现无法装载更多的元素,这是对象就需要扩大数组的长度,以便能 ...
- tornado-版本迁移工具alembic
pip install pymysql pip install sqlalchemy pip install alembic 1.connect db_config.py #coding=utf-8 ...
- [Lua]弱引用table
参考链接: http://www.benmutou.com/archives/1808 一.强引用table lua中的table是引用类型,更准确地说,是强引用类型.如下第二段代码,在内存中有一个{ ...
- 虚拟机安装 gentoo 的时候,通过 filezilla 上传 stage3 文件
最近需要在 虚拟机里面安装gentoo,但因为虚拟机里面自动下载的 stage3 太慢了,所以也在寻找解决办法,最终发现 filezilla 是个好办法. 主要参考 https://www.linux ...
- 关于lampp中的proftpd的一些使用
这个是配置文件 ServerName "ProFTPD" ServerType standalone DefaultServer on Port 21 这个是端口 Umask Ma ...