不改变原数组的方法
  1. concat() 连接两个或多个数组,不改变现有数组,返回新数组,添加的是数组中的元素
  2. join(",") 把数组中的所有元素放入一个字符串,通过‘,’分隔符进行分隔,返回字符串
  3. slice(start,end) 从已有的数组中返回选定的元素,从start开始选取, (若是负数,从尾部开始算起的位置:-2指倒数第二个元素)到end(不包括该元素),该方法不修改数组,返回一个字数组
  4. map(function(currentValue,index,arr),thisValue) 按照原始数组元素顺序依次处理元素,返回新数组,数组中的元素是原数组元素调用函数处理后的值,不会检测空数组,不改变原数组。currentValue (必须,当前元素的值)index(可选,索引值)arr(可选,当前元素属于数组对象),thisValue(可选,执行回调时使用,传递给函数(this))
  5. forEach()  调用数组的每个元素,并将元素传递给回调函数,空数组不执行回调函数,参数同上
  6. filter()  创建一个新数组,新数组中的元素是通过检查指定数组中符合条件的所有元素,不对空数组检测,不改变原数组,参数同上
  7. some() 检测数组中的元素是否满足指定条件(函数提供),依次执行数组的每个元素,如果有一个满足,返回true,剩余元素不再执行检测,如果没有满足条件的元素返回false(不检测空数组,不改变原数组)参数同上
  8. every() 检测数组所有元素是否都符合指定条件(函数提供),使用指定函数检测数组中的所有元素,如果有一个元素不满足返回false剩余不再检测,如果所有都满足,返回true(不检测空数组,不改变原数组)参数同上
其他
  1. indexOf(item,start) 返回数组中某个指定的元素位置,该方法将从头到尾检索数组,看是否含有对应元素,在start(可选)开始检索(或从头没有start),如果找到一个item(必须) 返回item的第一次出现的位置。开始位置索引是0,没找到返回-1  (若想查找字符串最后出现的位置用lastIndexOf()方法。
  2. includes(searchElement,fromIndex) 用来判断一个数组是否包含一个指定的值,是 返回true,否 返回false
      searchElement (必须)需要查找的元素值,fromIndex(可选),开始查找的索引

JS 数组的常用方法归纳之不改变原数组和其他的更多相关文章

  1. js 数组的常用方法归纳

    数组的常用方法归纳 slice(start,end) 传参:start代表从哪里开始截取,end代表截取结束的地方 var a = [1,2,3]a.slice(1);//[2,3] pop() 可以 ...

  2. js操作改变原数组的解决方法

    最近在开发的时候发现js中的循环操作会改变原数组,var一个变量承接也不行 甚至连map方法都会改变原数组,下面是解决方法 let a = ['a','b','c'] let b = [[2, 0, ...

  3. js数组方法 改变原数组和不改变原数组的方法整理

    改变原数组: pop():   删除 arrayObject 的最后一个元素,把数组长度减 1,并且返回它删除的元素的值.如果数组已经为空,则 pop() 不 改变数组,并返回 undefined 值 ...

  4. JS在不改变原数组的情况下复制一个新的数组

    var a={1,2,3,4} var data= JSON.parse(JSON.stringify(a[0])) a.push(data) a[4]=5 这样就不会改变原数组a的数据

  5. bit-map牛刀小试:数组test[X]的值所有在区间[1, 8000]中, 现要输出test中反复的数。要求:1. 不能改变原数组; 2.时间复杂度为O(X);3.除test外空间不超过1KB

    先来看看这个题目:数组test[X]的值所有在区间[1, 8000]中. 现要输出test中反复的数.要求:1. 不能改变原数组; 2.时间复杂度为O(X);3.除test外空间不超过1KB. 好, ...

  6. JavaScript Array返回值以及是否改变原数组。

    1.        push:最后一位新增://改变原数组         arr.push("123");         返回值是数组的长度:         var b =  ...

  7. Java方法调用数组,是否改变原数组元素的总结

    Java方法调用数组,是否改变原数组元素的总结 //个人理解, 欢迎吐槽 注意String是引用型变量, 我的理解也就是指向型, 指向一个数据或变量, 画图理解最容易, string 指向的 数据的值 ...

  8. JS 数组的常用方法详解归纳之改变原数组方法

    shift() 把数组的第一个元素从其中删除,并返回第一个元素的值, 如果数组是空的,那么 shift() 方法将不进行任何操作,返回 undefined 值.请注意,该方法不创建新数组,而是直接修改 ...

  9. 合并数组,改变原数组apply与不改变原数组

    一看见合并数组,可能第一反应就是concat,concat确实具有我们想要的行为,但它实际上并不附加到现有数组,而是创建并返回一个新数组. 同样你也许会想到ES6的扩展运算符...         但 ...

随机推荐

  1. hdu 4638 Group(离线+树状数组)

    Group Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Subm ...

  2. Java数据封装成树形结构,多级

    参考地址:https://blog.csdn.net/chendu500qiang/article/details/91493147 1.实体类 @data public class PublishS ...

  3. 值栈ValueStack的原理与生命周期

    1.ValueStack贯穿整个 Action 的生命周期,保存在request域中,所以ValueStack和request的生命周期一样.当Struts2接受一个请求时,会迅速创建ActionCo ...

  4. 常用windbg命令(转)

    1.查看版本信息:version.vertarget. 2.查看模块信息:lm.!dlls.!lmvi等. 3.调用栈:用k命令显示调用栈,用.frames命令切换栈帧. 4.内存操作:读内存用d命令 ...

  5. CSP2019 前 随感

    因为博主并没有任何的 oi 水平.文化课水平以及作文水平,下面的东西都是对辞藻和古诗词的堆砌. 不知不觉又到了新一年的 noip 了. 好像是去年的双十一的晚上,noip 考挂的我绝望地写了 bzoj ...

  6. 正确重写hashCode方法

    https://blog.csdn.net/HD243608836/article/details/87367763 到这里,对象写完了,开始描述问题. 计算hashCode的注意事项: 1.不能包含 ...

  7. 0-4评价一个语言模型Evaluating Language Models:Perplexity

    有了一个语言模型,就要判断这个模型的好坏. 现在假设: 我们有一些测试数据,test data.测试数据中有m个句子;s1,s2,s3-,sm 我们可以查看在某个模型下面的概率: 我们也知道,如果计算 ...

  8. js 获取滚动位置,滚动到指定位置,平滑滚动

    1.获取当前滚动条位置信息 var top = dom.scrollTop; // 获取y轴上的滚动位置 var left = dom.scrollLeft; // 获取x轴上的滚动位置 2.滚动到指 ...

  9. CF 696 A Lorenzo Von Matterhorn(二叉树,map)

    原题链接:http://codeforces.com/contest/696/problem/A 原题描述: Lorenzo Von Matterhorn   Barney lives in NYC. ...

  10. Coffee Chicken

    Coffee Chicken 字符串斐波那契 输出第s[n]个字符串的第k位及后十位 暴力算出前20项,超过20,跑dfs #include<bits/stdc++.h> using na ...