JavaScript中创建数组有两种方式
(一)使用 Array 构造函数:

var arr1 = new Array(); //创建一个空数组
var arr2 = new Array(20); // 创建一个包含20项的数组
var arr3 = new Array("jack","lucy","Tom"); // 创建一个包含3个字符串的数组

(二)使用 Array 构造函数:
数组的方法有数组原型方法,也有从object对象继承来的方法,这里我们只介绍数组的原型方法,数组原型方法主要有以下这些

join()   //切割数组转为字符串
push()      //可以接收任意数量的参数,把它们逐个添加到数组末尾,并返回修改后数组的长度。
pop()       //数组末尾移除最后一项,减少数组的 length 值,然后返回移除的项。
shift()     //删除原数组第一项,并返回删除元素的值;如果数组为空则返回undefined 。
unshift()   //将参数添加到原数组开头,并返回数组的长度 。
sort()      //按升序排列数组项——即最小的值位于最前面,最大的值排在最后面。
reverse()   //反转数组项的顺序。
concat()    //将参数添加到原数组中。这个方法会先创建当前数组一个副本,然后将接收到的参数添加到这个副本的末尾,最后返回新构建的数组。在没有给 concat()方法传递参数的情况下,它只是复制当前数组并返回副本。
slice()     //返回从原数组中指定开始下标到结束下标之间的项组成的新数组。slice()方法可以接受一或两个参数,即要返回项的起始和结束位置。在只有一个参数的情况下, slice()方法返回从该参数指定位置开始到当前数组末尾的所有项。如果有两个参数,该方法返回起始和结束位置之间的项——但不包括结束位置的项。
splice()    //很强大的数组方法,它有很多种用法,可以实现删除、插入和替换。
indexOf()   //接收两个参数:要查找的项和(可选的)表示查找起点位置的索引。其中, 从数组的开头(位置 0)开始向后查找。
lastIndexOf() (ES5新增)//接收两个参数:要查找的项和(可选的)表示查找起点位置的索引。其中, 从数组的末尾开始向前查找。
forEach() (ES5新增)//对数组进行遍历循环,对数组中的每一项运行给定函数。这个方法没有返回值。参数都是function类型,默认有传参,参数分别为:遍历的数组内容;第对应的数组索引,数组本身。
map() (ES5新增)//指“映射”,对数组中的每一项运行给定函数,返回每次函数调用的结果组成的数组。
filter() (ES5新增)//“过滤”功能,数组中的每一项运行给定函数,返回满足过滤条件组成的数组。
every() (ES5新增)//判断数组中每一项都是否满足条件,只有所有项都满足条件,才会返回true。
some() (ES5新增)//判断数组中是否存在满足条件的项,只要有一项满足条件,就会返回true。
reduce()    //reduce()方法从数组的第一项开始,逐个遍历到最后。
reduceRight() (ES5新增)//而 reduceRight()则从数组的最后一项开始,向前遍历到第一项。

操作Array

数组去重的方法//ES6中的new Set方法var arr = [1,1,1,2,34,5,6,5,6,2,1]console.log(arr) //去重前arr = [...new Set(arr)]console.log(arr) //去重后数组去重的函数封装function romoval(arr1) {//定义一个空数组用来存储去重后的结果var arr = [];//遍历数组中的所有元素for(var i = 0; i < arr1.length; i++) {//判断arr数组中是否有当前遍历的元素出现//如果 arr里面没有当前遍历的元素的话if(arr.indexOf(arr1[i]) == -1) {arr.push(arr1[i]); //空数组中添加元素}}//console.log(arr);return arr;}返回一个数组中的相同项function repeatArray(arr) {let repeatItem = [];arr.sort().sort((a, b) => {if (a === b && repeatItem.indexOf(a) === -1) {repeatItem.push(a);}});return repeatItem;
}数组排序//冒泡排序的方法var  arr = [12,2,4,3,18,5];//外层循环,循环遍历所有的值for(var i=0;i<arr.length; i++){//内层循环,从当前元素下一个元素开始循环比较,取决于当前i循环到的值for(var j = i+1; j<arr.length; j++){//i下标对应的值和j下标对应的值进行比较if(arr[i] > arr[j]){//数组前面的元素大于后面的元素,交换位置var tmp = arr[i];arr[i] = arr[j];arr[j] = tmp;}}}console.log(arr);//打印数组的值// sort排序var  arr = [12,2,4,3,18,5];//自定义的排序方法function px(a,b){return a-b;  //降//return b-a; 升}var arr = arr.sort(px);             console.log(arr);

操作数组对象 / json / [{},{},{}]

const arr = [{assetCode: '600734',assetName: '蒸羊羔儿',
}, {assetCode: '600735',assetName: '蒸熊掌',
}, {assetCode: '600736',assetName: '蒸鹿尾儿',
}, {assetCode: '600737',assetName: '烧花鸭',
}, {assetCode: '600738',assetName: '烧雏鸡',
}, {assetCode: '600739',assetName: '烧子鹅',
}, {assetCode: '600740',assetName: '炉猪',
}, {assetCode: '600741',assetName: '炉鸭',
}, {assetCode: '600742',assetName: '炉猪',
}, {assetCode: '600743',assetName: '酱鸡',
}, {assetCode: '600744',assetName: '腊肉',
}, {assetCode: '600745',assetName: '松花小肚儿',
}, {assetCode: '600746',assetName: '晾肉',
}, {assetCode: '600747',assetName: '香肠儿',
}, {assetCode: '600748',assetName: '什锦苏盘儿',
}];;let assets = ["600742", "600740", "600741", "600739"]// 返回assets中的包含 arr.assetCode 的 item项
const newArr = assets.map(item => {return arr.find(ite => ite.assetCode === item);
});// 删除两个数组中 相同的 item (批量删除)let selectList = [{assetCode: '600745',assetName: '松花小肚儿',
}, {assetCode: '600746',assetName: '晾肉',
}, {assetCode: '600747',assetName: '香肠儿',
}, {assetCode: '600748',assetName: '什锦苏盘儿',
}]
const arr = [...arr, ...selectList];
const newArr = arr.filter(item => {return !(arr.includes(item) && selectList.includes(item));
});// 删除两个数组中 相同的 item (单个删除)let isDelCode = [{assetCode: '600745',assetName: '松花小肚儿',
}]const newArr = arr.filter((item, index, array) => {return !(array.includes(item) && isDelCode.includes(item));
});

————————————————————————————————

只是记录自己工作中常见的东西 毫无商业价值

JavaScript Array function 常见操作json 数组相关推荐

  1. java代码中fastjson生成字符串和解析字符串的方法和javascript文件中字符串和json数组之间的转换方法...

    1.java代码中fastjson生成字符串和解析字符串的方法 List<TemplateFull> templateFulls = new ArrayList<TemplateFu ...

  2. js常用的操作json数组

    var array = [{"name": "满意1","value": "100"},{"name" ...

  3. Java操作Json数组

    一.字符串与json 字符串格式: static String json = "[{'day1':'work','day2':26},{'day1':123,'day2':26}]" ...

  4. 数组常见操作:数组中元素的查找

    package day4;/*** 数组中元素的查找*/ public class ArrDemo10 {public static void main(String[] args) {int[] a ...

  5. scala学习笔记-Array、ArrayBuffer以及遍历数组(7)

    Array 在Scala中,Array代表的含义与Java中类似,也是长度不可改变的数组.此外,由于Scala与Java都是运行在JVM中,双方可以互相调用,因此Scala数组的底层实际上是Java数 ...

  6. Poco库使用:操作Json格式数据

    文章目录 1.解析json字符串数据 2.生成Json格式的数据 3.操作Json数组 4.使用字符串流转换Json格式数据 5.使用键值检索Json结构中的数据 6.使用原始字符串避免字符转义 7. ...

  7. js json数组按某一字段排序

    一.首先给大家介绍js中内置的 sort() 方法 此方法默认是按字母顺序对数组中的元素进行排序的,说得更精确点,是按照字符编码的顺序进行排序. 看如下例子: 当数组中元素为 数字类型 时,排序结果与 ...

  8. jq遍历json/数组

    $(function() {//jq遍历json/数组var json =[{code:"101",val:"1111"},{code:"102&qu ...

  9. JavaScript对数组的常见操作

    遍历数组 for-of 循环 for(let item of items)循环遍历数组项 let ary = ["css", "Javascript", &qu ...

最新文章

  1. python数据库gui_从python数据库在gui上打印数据
  2. 一次性讲清 Spring 常用注解 @Bean 、 @Component 、@Autowire、@Resource 的区别, 你知道吗?
  3. 谈谈图像的style transfer(二)
  4. 智课雅思词汇---五、优词词根字典
  5. NoSQL实现(3)——Cassandra
  6. Linux 运维工作中的经典应用ansible(批量管理)Docker容器技术(环境的快速搭建)...
  7. C#学习笔记:预处理指令
  8. bing背单词交互流程 - Chongyang Bai
  9. windows安装Linux卡logo,Dell xps 15 windows ubuntu16.04 UEFI 双系统安装 卡在logo界面 卡***问题解决...
  10. android标题栏上增加按钮,Android:向自定义标题栏添加按钮
  11. a标签无跳转的死链接
  12. android+大富翁+局域网,【图片】大富翁6局域网(LAN)多人联机教程(求精)_大富翁吧_百度贴吧...
  13. 使用CocoaPods被卡住:Updating local specs repositories
  14. CnForums1.0 Alpha RC1 发布
  15. word方框(□)中打钩(√)的3种方法
  16. 中英文语音/录音转文字必备的6个软件
  17. 面向对象,继承封装的应用
  18. outlook服务器响应错误,outlook 错误代码解析与解决方法
  19. 设计模式(一)设计模式的分类与区别
  20. android简单记账源码,Android+个人记账程序源码.rar(入门级)

热门文章

  1. mysql回到上级目录_获取当前目录的上级目录
  2. PHP上传图片到数据库
  3. 使用metaIn建设智慧城市
  4. 和12岁小同志搞创客开发:遥控舵机
  5. 纯web项目不能使用mui.preload进行页面预加载的解决办法
  6. python 时间序列数据 重采样
  7. vuecli3关闭 Prefetch
  8. 基于python的垃圾邮件分类_python实现贝叶斯推断——垃圾邮件分类
  9. 特别行政区界线lisp_CAD 系统变量参数大全 - AutoLISP/Visual LISP 编程技术 - CAD论坛 - 明经CAD社区 - Powered by Discuz!...
  10. Python量化投资——七行python代码生成K线图(最后有干货)