主要有两个 indexOf():在数组中查找给定元素的第一个索引 如果存在返回索引不存在返回-1;该函数只返回第一个满足条件的元素索引 var arr = ['a','b','c','b'] console.log...(arr.indexOf('b'))//返回1 console.log(arr.indexOf('d'))//返回-1 lastIndexOf() 与功能一样,不过该函数是从数组后面开始查找的,返回元素的索引是正确的索引...如果存在返回索引不存在返回-1 var arr = ['a','b','c','b'] console.log(arr.indexOf('b'))//返回1 console.log(...arr.lastIndexOf('b'))//返回3 数组去重 //去掉arr的重复元素 var arr = ['a','b','c','b','a']; 核心原理:遍历旧数组,然后拿着旧数组元素去查询新数组...,如果该元素在新数组里面没有出现过,我们就添加,否则不添加 var arr = ['a','b','c','b','a']; var newArr = []; for(var i=0;i
js数组常用方法还挺多的,有16个,如果面试官问你这道题可不要只回答几个哟,那是会扣分的! 1. Array.push(),向数组的末尾添加一个或多个元素,并返回新的数组长度。原数组改变。...Array.pop(),删除并返回数组的最后一个元素,若该数组为空,则返回undefined。原数组改变。 3. ...(注意该方法和map的区别,若直接打印Array.forEach,结果为undefined)。 13.Array.filter(function),过滤数组中,符合条件的元素并返回一个新的数组。...接着面试官可能还会问你: 原数组改变的方法有:push pop shift unshift reverse sort splice 不改变原数组的方法有:concat map filter join...感兴趣的请看下一篇文章—>reduce()数组方法的使用场景 我是不爱吃糖的程序媛,关注我不迷路,向前端大佬出发!
} } return newArr } } console.log(deduplication(arr1)); //3,5,6,7,test 对象数组去重方法...1. reduce方法去重 let obj = {}; let arr = [ { name: 'swt', pwd: '123456' }, { name: 'swt...ES6 Set Set本身是一个构造函数,用来生成Set结构;它类似于数组,但是成员的值是唯一的,没有重复的值 let arr = [ { name: 'swt', pwd: '123456
01 - 添加数组元素方法 push()方法: 在数组结尾处向数组添加一个新的元素(其余元素索引未改变),参数为被添加元素 let fruits = ['苹果','香蕉','橘子'] fruits.push...('西瓜') // 向数组添加一个新元素 console.log(fruits); // ['苹果','香蕉','橘子','西瓜'] 返回值为改变后新数组的长度 let fruits = [...// x的值为4 02 - 删除数组元素方法 pop()方法: 删除数组中最后一个元素(其余元素索引未改变) let fruits = ['苹果','香蕉','橘子'] fruits.pop...sort()方法: 默认让数组按照字母排序,返回值为排序后的新数组 let fruits = ["Banana", "Orange", "Apple", "Mango"] x = fruits.sort...()方法: 合并两个数组或是一个数组和多个元素,类似于向数组添加元素参数可以为一个数组或是元素,返回值为合并后的新数组 let fruits = ["Banana", "Orange", "Mango
JS 数组常用的方法(个人感觉) 1. forEach() 循环,无法在中间停止 2. some() 循环,找到符合条件的之后,可以通过 return true 退出循环 3. every() 测试数组中的所有元素是否都能通过某个指定函数的测试...70 6. map() map()方法把调用它的数组的每一个元素分别传给指定的函数,返回这个函数的返回值构成的数组 let a = [1, 2, 3]; let newA = a.map((v) =...> v * v); console.log(newA); let a = [1, , 2, , 3]; // 如果数组是稀疏的,缺失元素不会调用函数,但是返回的数组也会和原始数组一样稀疏 let newA...; // push()在数组末尾添加元素,并返回数组的新长度 console.log(a); console.log(a.pop()); // pop()删除数组末尾的元素,并返回删除的元素 console.log...; console.log(a.split(",")); 16. sort() sort()方法对数组元素按字母顺序对数组元素排序 let arr = [1, 2, 11, 23, 22, 111,
1、Switch语句 语法结构 switch(变量) { case 情况1: //符合情况1,执行下面代码 Js代码; break; ...Js中的数组是将任意数据类型,放在一起按照一定顺序排练的集合 (1)、数组的两种定义方式 Var ary=new Array() 创建对象的方式 Var ary1=[]; (2)、...; i++) { alert(ary[i]); //通过下标获取 } 9、数组合并 concat方法 // var ary3 = [12, 324, 4, "re"]; // var ary1 =...[234, 87, "hd"]; // var ary2 = ary3.concat(ary1); //数组合并 合二为一 // alert(ary2); // join方法 返回的是字符串类型...var ary = [123, 56, 343]; var ary2 = ary.join("ad") //在数组中间加入字符 alert(ary2); 10、函数(方法)定义 通过 function
= [1,5,3,9,8]; var cut = array.slice(1,4); console.log(cut); 打印出的结果是 [5, 3, 9] 值得注意的是,slice()不会操作原有数组
:用于连接两个或多个数组,该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本。...3.pop() 功能:方法用于删除并返回数组的最后一个元素。...12.valueOf() 功能:返回数组的原始值(一般情况下其实就是数组自身),一般由js在后台调用,并不显式的出现在代码中 参数:无 var arr = [1,2,3]; console.log...,用来遍历数组,该方法没有返回值。...//该方法为遍历方法,不会修改原数组 16.map() 功能:1.同forEach功能;2.map的回调函数会将执行结果返回,最后map将所有回调函数的返回值组成新数组返回。
01、concat()---合并数组的方法 02、join(separator)--把数组的所有元素放入一个字符串。元素通过指定的分隔符separator进行分隔。...03、shift()---删除数组第一个元素 04、pop()---删除数组最后一个元素 05、unshift()---在数组开头追加元素 06、push()---在数组末尾追加元素 07、reverse...---新元素替换原来的元素,从start位置开始删除deleteCount项,并从该位置起插入val1,val2,... 10、slice(start,end)---从一个已有的数组中返回选定的元素,...返回从原数组中指定开始下标到结束下标之间的项组成的新数组 11、toString()----把数组转化成字符串 12、indexof()---返回某个指定的字符串值在数组中首次出现的位置。...13、lastIndexOf( )---返回一个指定的字符串值最后出现的位置,在一个字符串中的指定位置从后向前搜索。 ? ?
接着之前数组常用方法详解(一)第二部分介绍数组剩下的一些常用方法 2.12 *** concat() concat()方法可以在现有数组全部元素基础上创建一个新数组,它首先会创建一个当前数组的副本,然后再把它的参数添加到副本末尾...slice()方法可以接收一个或两个参数:返回元素的开始索引和结束索引。如果只有一个参数,则slice()会返回该索引到数组末尾的所有元素。...indexOf()方法从数组前头(第一项)开始向后搜索,而lastIndexOf()从数组末尾(最后一项)开始向前搜索;indexOf()和 lastIndexOf()都返回要查找的元素在数组中的位置,...,如果对每一项函数都返回 true,则这个方法返回 true。...some(): 对数组每一项都运行传入的函数,如果有一项函数返回 true,则这个方法返回 true。
unshift:将参数添加到原数组开头,并返回数组的长度 。 这组方法和上面的push()和pop()方法正好对应,一个是操作数组的开头,一个是操作数组的结尾。...这个方法会先创建当前数组一个副本,然后将接收到的参数添加到这个副本的末尾,最后返回新构建的数组。在没有给 concat()方法传递参数的情况下,它只是复制当前数组并返回副本。...splice()方法始终都会返回一个数组,该数组中包含从原始数组中删除的项,如果没有删除任何项,则返回一个空数组。...,也不会改变原始数组 find()方法主要用来返回数组中符合条件的第一个元素(没有的话,返回undefined) filter()方法主要用来筛选数组中符合条件的所有元素,并且放在一个新数组中,如果没有...,返回一个空数组 map()方法主要用来对数组中的元素调用函数进行处理,并且把处理结果放在一个新数组中返回(如果没有返回值,新数组中的每一个元素都为undefined) forEach()方法也是用于对数组中的每一个元素执行一次回调函数
ES5 方法总结 slice /1.slice方法 1) 作用:从一个数组中截取出新的数组 2) 格式:数组名.slice(begin,end); begin表示开的下标 end表示结束的下标...,但是在截取时不包含结束下标对应的元素 3) 注意: 原数组不受影响 如果只设置一个参数,即begin,那么会从begin截取到最后 如果不写参数,那么slice方法可以实现数组的复制...let arr2 = arr.clone() console.log(arr2) console.log( arr2 === arr ) concat() 使用 concat() 用于连接两个或多个数组...该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本 Array.prototype.clone=function(){ return [].concat(this); //或者...this.concat(); } let arr = ['aaa','asss'] let arr1 = arr.clone() arr[0] = 123 console.log(arr,arr1) ES6 方法总结
返回删除后的数组。...,并返回数组新的长度;pop返回最后一个元素 输入:push输入为插入的元素;pop输入为空 输出:push为新长度;pop为返回的数组元素 1 // push() 在数组末尾添加一个或多个元素,...:类似数组的对象和可遍历的对象 输入:待转换的对象,第二个参数可选,作用类似于数组的map方法,用来对每个元素进行处理,将处理后的值放入返回的数组。 ...,返回当前数组。 ...()) { 14 console.log(index, elem); 15 } 16 // =>0 "a" 17 // =>1 "b" 如果不使用for…of循环,可以手动调用遍历器对象的next方法
功能强大的splice方法 数组中最强大的方法splice(),可以对数组进行添加、删除、替换操作 删除 arr=[‘0赵’,‘1钱’,‘2孙’,‘3李’,‘4周’,‘5吴’] arr.splice(index...,num) 第一个参数表示开始删除的索引位置,num表示删除的个数 如arr.splice(1,2) 返回的结果为:arr=[‘0赵’,‘3李’,‘4周’,‘5吴’] 添加 arr=[‘0赵’,‘...arr.splice(index,0,‘x’,‘y’) 第一个参数表示开始插入的索引位置,0表示删除0个,后面的表示添加的元素 如 arr.splice(2,0,‘haaa’,‘wuuu’] 返回的结果为
整数,规定从何处添加/删除元素,是开始插入/删除的数组元素的下标 howmany 必需。整数,规定删除多少个元素。如果设置为 0,则不会删除元素 item1, …, itemX 可选。...res); //返回被删除的元素:["c"] console.log(arr); //修改后的数组:["a", "b", "d"] //指定位置删除指定个数(0个) var arr = ['a','b...','c','d']; var res = arr.splice(2,0); console.log(res); //返回被删除的元素:[] console.log(arr); //修改后的数组:["a...//指定位置删除元素同时插入元素 var arr = ['a','b','c','d']; var res = arr.splice(2,1,'插入'); console.log(res); //返回被删除的元素...:["c"] console.log(arr); //修改后的数组:["a", "b", "插入", "d"] 2、delete:用于删除对象的某个属性,或删除数组的某一项 (详细说明:https://
大家好,又见面了,我是你们的朋友全栈君 用 entries方法 和 map 方法,对象转成数组 let Obj = { allOrder: 1, notStart: 2,
1.不生成新数组的迭代器方法 forEach() 该方法接受一个函数作为参数,对数组中的每个元素使用该函数。...,只要有一个元素使得该函数返回为true,该方法就返回true。...该方法会从一个累加值开始,不断对累加值和数组中的后续元素调用改函数,直到数组中的最后一个元素,最后返回得到的累加值。...map() 该方法对数组中的每个元素使用某个函数,返回一个新的数组,该数组的元素是对原有元素应用某个函数得到的结果。...,当对数组中的所有元素应用改函数,结果均为true时,该方法并不返回true,而是返回一个新的数组。
一、reduce 方法 reduce() 方法接收一个函数作为累加器(accumulator),数组中的每个值(从左到右)开始缩减,最终为一个值。...也就是说,这个累加器会从第一个累加值开始,不断对累加值和数组中的后续元素调用该累加器,直到数组中的最后一个元素,最后返回得到的累加值。...当前元素所属的数组对象。 累加器参数 累加器参数说明 total 必需。初始值, 或者计算结束后的返回值。 currentValue 必需。当前元素 currentIndex 可选。...当前元素所属的数组对象。 累加器参数 累加器参数说明 total 必需。初始值, 或者计算结束后的返回值。 currentValue 必需。当前元素 currentIndex 可选。...,采用分而治之的方法,即将 reduce 函数第一个参数 callback 封装为一个数组,由数组中的每一个函数单独进行叠加并完成 reduce 操作。
https://blog.csdn.net/wkyseo/article/details/51274550 判断数组中是否有相同的元素 第一种方法 function isRepeat(.../* * 逻辑思路:定义一个对象 遍历数组,判断该对象的键有没有,有的话返回true,否则返回false */ function isRepeat(arrs) {...使用indexOf方法 /* 重复项 indexOf方法在IE8及IE8以下不支持,因此有必要封装一个 * @return {newArrays} 返回新数组 */...* @param {arr,arrs} 某一项 原数组 * @return 返回数组某一项 */ function indexOf(arr,arrs){...||[].slice.call(arguments) JS二维数组排序组合 var arr = [["wu", "xia"], ["kong", "tao"], ["yun", "ou"]]; //
length 设置或返回数组中元素的数目。 prototype 使您有能力向对象添加属性和方法。...4.数组对象的方法 4.1添加属性: 1.push():将数组添加到原数组末尾,并返回数组的长度。 ...2.sort():用于对数组中的元素进行排序。 2.1:即使数组中的每一项都是数组,sort方法比较的也是字符串。 2.2:sort()方法可以接受一个比较函数作为参数。...5.ECMAScript 5方法: 5.1位置方法: indexOf():从数组的开头(位置)开始查找; lastindeOf():从数组的结束位置开始查找; 5.2:迭代方法:...; some 有任意一项返回true,则返回true; 5.3缩小方法: reduce 数组起始位开始遍历; reduceRight 从数组末尾开始遍历
领取专属 10元无门槛券
手把手带您无忧上云