数组中常用方法

一 、连接数组的方法

连接两个数组的方法 concat

var hege = ["Cecilie", "Lone"];
var stale = ["Emil", "Tobias", "Linus"];
var children = hege.concat(stale);
document.write(children);

  //输出结果     Cecilie,Lone,Emil,Tobias,Linus

合并两个以上的数组 concat

var parents = ["Jani", "Tove"];
var brothers = ["Stale", "Kai Jim", "Borge"];
var children = ["Cecilie", "Lone"];
var family = parents.concat(brothers, children);
document.write(family);

  //输出结果    Jani,Tove,Stale,Kai Jim,Borge,Cecilie,Lone

二、把数组拼成字符串

	var fruits = ["Banana", "Orange", "Apple", "Mango"]
	fruits.join();

  // 输出结果   Banana,Orange,Apple,Mango

三、删除数组中最后一个元素

var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.pop();

  //输出结果 Banana,Orange,Apple

四、插入、替换或删除

//插入
let arr=[1,3,4];
arr.splice(1,0,2)

  //输出结果   1,2,3,4

//替换
let arr=[1,5,3,4]
arr.splice(1,1,2)

  //输出结果  1,2,3,4

//删除
let arr=[1,3,2,3,4]
arr.splice(1,1)

  //输出结果 1,2,3,4

五、在数组最后添加一个元素

let arr =[1,2,3]
arr.push(4)

  // 输出结果 1,2,3,4

六、将数组顺序反过来

let arr=[4,3,2,1]
arr.reverse()

  //输出结果 1,2,3,4

七、删除数组中第一个元素

let arr=[5,1,2,3,4]
arr.shift()

  //输出结果 1,2,3,4

八、从数组中选择一个元素

let arr=[5,3,1,2,4]
let result=arr.slice(2,3)

  //输出结果  1,2

九、对数组进行排序

按字母升序

var fruits = ["Banana", "Orange", "Apple", "Mango"];
	fruits.sort();

  //输出结果   Apple,Banana,Mango,Orange

按数字升序

var points = [40,100,1,5,25,10];
	points.sort(function(a,b){return a-b});

  //输出结果  1,5,10,25,40,100

按数字降序

var points = [40,100,1,5,25,10];
	points.sort(function(a,b){return b-a});

  //输出结果 100,40,25,10,5,1

十、把数组转成字符串

var fruits = ["Banana", "Orange", "Apple", "Mango"];
	var str = fruits.toString();

  //输出结果 Banana,Orange,Apple,Mango

十一、在数组开始插入元素

var fruits = ["Banana", "Orange", "Apple", "Mango"];
	fruits.unshift("Lemon","Pineapple");

  //输出结果  Lemon,Pineapple,Banana,Orange,Apple,Mango

*es6 map数据结构 和 set数据结构

Map数据结构

  Map 对象保存键值对。任何值(对象或者原始值) 都可以作为一个键或一个值。

  • 一个 Object 的键只能是字符串或者 Symbols,但一个 Map 的键可以是任意值。
  • Map 中的键值是有序的(FIFO 原则),而添加到对象中的键则不是。
  • Map 的键值对个数可以从 size 属性获取,而 Object 的键值对个数只能手动计算。
  • Object 都有自己的原型,原型链上的键名有可能和你自己在对象上的设置的键名产生冲突。

Set数据结构

  Set 对象允许你存储任何类型的唯一值,无论是原始值或者是对象引用。

set中的特殊值

Set 对象存储的值总是唯一的,所以需要判断两个值是否恒等。有几个特殊值需要特殊对待:

  • +0 与 -0 在存储判断唯一性的时候是恒等的,所以不重复;
  • undefined 与 undefined 是恒等的,所以不重复;
  • NaN 与 NaN 是不恒等的,但是在 Set 中只能存一个,不重复。

Set属性和操作方法

  add(value) 添加某个值,返回Set结构本身。

let set = new Set();
let a  = NaN;
let b  =NaN;
set.add(a).add(b);//返回set本身则可以链式调用
set;//Set {NaN}

  delete(value) 删除某个值,返回一个布尔值,表示删除是否成功。

  has(value) 返回一个布尔值,表示该值是否为Set的成员。
  clear() 清除所有成员,没有返回值。
  Map属性和操作方法

Map属性/方法 作用
  size属性 size属性返回 Map 结构的成员总数。
  set(key, value) set方法设置键名key对应的键值为value,然后返回整个 Map 结构。如果key已经有值,则键值会被更新,否则就新生成该键。set方法返回的是当前的Map对象,因此可以采用链式写法。
  get(key) get方法读取key对应的键值,如果找不到key,返回undefined。
  has(key)   has方法返回一个布尔值,表示某个键是否在当前 Map 对象之中。
  delete(key) delete方法删除某个键,返回true。如果删除失败,返回false。
  clear() clear方法清除所有成员,没有返回值

  

原文地址:https://www.cnblogs.com/xiaobu-wu/p/12991866.html