이 글은 JavaScript 배열에서 일반적으로 사용되는 API를 요약하여 소개합니다. 도움이 필요한 친구들이 참고할 수 있습니다.
배열용 일반 API 소개
split()
: 문자열을 배열로 분할(문자열에 대해 작동) split()
:拆分字符串变成数组(对字符串操作)join()
:合并数组变成字符串(对数组操作)concat()
:连接两数组splice(begin,deleteCount,insert)
:拼接splic(begin,end)
:截取[begin,end)
sort(callball(value1,value2))
:排序resever()
:反序filter(callback(currentValue,index))
:筛选map(callback(currentValue,index))
:遍历,有返回值,和forEach
类似forEach(callback(currentValue,index))
:遍历,没有返回值reduce(callback(array,currentValue,index)[,array])
:累计处理arguments
:在函数内部使用,将函数的参数变成伪数组(不能用数组的 api)
例子
sort
排序:如果value1 返回<code>-1
,升序排列;返回1
,降序排列
var arr = [1,5,4,3,2,6,7] arr.sort((value1,value2) => { if(value1 value2){ return 1 //降序 }else{ return 0 } })
filter
筛选数组,接受一个回调函数,回调函数的参数value
、index
(可选)、array
(可选)
let arr = [1,2,3,4,5,6,7,8,9] arr.filter((value,index) =>{ console.log(index) return value > 5 //筛选条件 })
let fruits = ['apple', 'banana', 'grapes', 'mango', 'orange']; function find(element){ return fruits.filter((e)=>{ return e.indexOf(element) >= -1 //indexOf查到元素,找到返回元素的索引 }) } find('ap') //['apple','grapes']
map
和forEach
之间的区别是:map
有返回值,forEach
没有返回值;要forEach
能返回值出来,在它内部定义一个变量存储遍历的值就可以了。
var a = [1,2,3,4] a.map(e => e*2) //[1,4,6,8] a.forEach(e => e*2) //undefined, return 也不会出来
reduce
接受两个参数,回调函数和回调函数的第一个参数(可选);回调函数接受四个参数:1、回调函数的返回值(处理结果)或者reduce
的第二个参数;2、正在处理的元素;3、正在处理元素的索引;4、调用reduce
的数组。
如果reduce
接收第二个参数,那么回调函数的第一个参数就是它(如去重,运行逻辑是把待处理数组的每一项处理后在一个个push
进去,是加的过程);如果没有第二个参数,那么回调函数的第一个参数就是待处理数组的第一项(如摧毁数组,运行逻辑是把待处理数组直接拿过来集中处理,是减的过程)。
//去重:把待处理数组的每一项处理后在一个个`push`进去,是加的过程 var a = [1,2,3,2,4,5,3,1] a.sort().reduce((arr,currentValue) => { if(arr.length === 0 || arr[arr.length-1] !== currentValue){ arr.push(currentValue) } return arr },[]) //[1,2,3,4,5] //摧毁数组:把待处理数组直接拿过来集中处理,是减的过程 function destroyer(arr) { return [].slice.call(arguments).reduce((current,next) =>{ return current.filter((e) => { return e !== next }) }) } destroyer([1, 2, 3, 1, 2, 3], 2, 3); //[1,1]
arguments
join()
: 배열을 배열로 병합 문자열(배열 작업)
concat()
: 두 배열 연결 splice(begin,deleteCount,insert)
: Splice splic(begin,end): <code>[begin,end)
sort(callball(value1,value2))
차단: sortresever()
: 역순 filter(callback(currentValue,index))
: 필터 map(callback(currentValue,index))
: 트래버스, 반환 값 및 forEach
forEach(callback(currentValue,index))
와 유사: 순회, 반환 값 없음
reduce(callback(array,currentValue,index)[,array])
: 누적 처리
sort
정렬 : value1 가 -1
를 반환하면 오름차순으로 정렬되고 1
을 반환하고 내림차순으로 정렬됩니다. function array(arr){
console.log(arr) //[1,2,3,4,5],注意是一个伪数组,不能用数组的方法
}
array(1,2,3,4,5)
var args = Array.prototype.slice.call(arguments);
var args = [].slice.call(arguments);
filter
필터 배열, 콜백 함수 허용, 콜백 함수의 매개변수는 value
, index
(선택 사항), array
입니다. (선택 사항)🎜rrreeerrreee map
과 forEach
의 차이점은 다음과 같습니다. map
에는 forEach
라는 반환 값이 있습니다. >에는 반환 값이 없습니다. forEach
는 값을 반환할 수 있으며, 순회된 값을 저장하기 위해 그 안에 변수를 정의하기만 하면 됩니다. 🎜rrreee
reduce
는 콜백 함수와 콜백 함수의 첫 번째 매개변수(선택 사항)라는 두 개의 매개변수를 허용합니다. 콜백 함수는 4개의 매개변수를 허용합니다. 1. 콜백 함수의 반환 값(처리) result ) 또는 reduce
의 두 번째 매개변수 2. 처리 중인 요소 3. 처리 중인 요소의 인덱스 4. reduce
를 호출하는 배열. 🎜🎜reduce
가 두 번째 매개변수를 수신하면 콜백 함수의 첫 번째 매개변수가 해당 매개변수입니다(예: 중복 제거, 실행되는 로직은 처리할 배열의 각 항목을 하나씩 처리하는 것입니다) push
가 들어가는데, 이는 추가하는 과정입니다.) 두 번째 매개변수가 없으면 콜백 함수의 첫 번째 매개변수는 처리할 배열의 첫 번째 항목입니다(예: 배열 파괴). , 실행 로직은 처리할 배열을 직접 넣어서 중앙에서 처리하는 것이 축소 과정입니다. 🎜rrreee
인수
배열은 아니지만 실제 배열로 변환할 수 있습니다. 다음은 두 가지 방법입니다.🎜rrreee🎜관련 권장 사항: 🎜🎜🎜🎜JS에서 문자열 전체 배열 알고리즘 분석🎜🎜🎜🎜🎜자바스크립트의 이벤트 흐름 내용에 대한 간략한 분석🎜🎜🎜
filter
필터 배열, 콜백 함수 허용, 콜백 함수의 매개변수는 value
, index
(선택 사항), array
입니다. (선택 사항)🎜rrreeerrreee map
과 forEach
의 차이점은 다음과 같습니다. map
에는 forEach
라는 반환 값이 있습니다. >에는 반환 값이 없습니다. forEach
는 값을 반환할 수 있으며, 순회된 값을 저장하기 위해 그 안에 변수를 정의하기만 하면 됩니다. 🎜rrreee
reduce
는 콜백 함수와 콜백 함수의 첫 번째 매개변수(선택 사항)라는 두 개의 매개변수를 허용합니다. 콜백 함수는 4개의 매개변수를 허용합니다. 1. 콜백 함수의 반환 값(처리) result ) 또는 reduce
의 두 번째 매개변수 2. 처리 중인 요소 3. 처리 중인 요소의 인덱스 4. reduce
를 호출하는 배열. 🎜🎜reduce
가 두 번째 매개변수를 수신하면 콜백 함수의 첫 번째 매개변수가 해당 매개변수입니다(예: 중복 제거, 실행되는 로직은 처리할 배열의 각 항목을 하나씩 처리하는 것입니다) push
가 들어가는데, 이는 추가하는 과정입니다.) 두 번째 매개변수가 없으면 콜백 함수의 첫 번째 매개변수는 처리할 배열의 첫 번째 항목입니다(예: 배열 파괴). , 실행 로직은 처리할 배열을 직접 넣어서 중앙에서 처리하는 것이 축소 과정입니다. 🎜rrreee
인수
배열은 아니지만 실제 배열로 변환할 수 있습니다. 다음은 두 가지 방법입니다.🎜rrreee🎜관련 권장 사항: 🎜🎜🎜🎜JS에서 문자열 전체 배열 알고리즘 분석🎜🎜🎜🎜🎜자바스크립트의 이벤트 흐름 내용에 대한 간략한 분석🎜🎜🎜
reduce
는 콜백 함수와 콜백 함수의 첫 번째 매개변수(선택 사항)라는 두 개의 매개변수를 허용합니다. 콜백 함수는 4개의 매개변수를 허용합니다. 1. 콜백 함수의 반환 값(처리) result ) 또는 reduce
의 두 번째 매개변수 2. 처리 중인 요소 3. 처리 중인 요소의 인덱스 4. reduce
를 호출하는 배열. 🎜🎜reduce
가 두 번째 매개변수를 수신하면 콜백 함수의 첫 번째 매개변수가 해당 매개변수입니다(예: 중복 제거, 실행되는 로직은 처리할 배열의 각 항목을 하나씩 처리하는 것입니다) push
가 들어가는데, 이는 추가하는 과정입니다.) 두 번째 매개변수가 없으면 콜백 함수의 첫 번째 매개변수는 처리할 배열의 첫 번째 항목입니다(예: 배열 파괴). , 실행 로직은 처리할 배열을 직접 넣어서 중앙에서 처리하는 것이 축소 과정입니다. 🎜rrreee
인수
배열은 아니지만 실제 배열로 변환할 수 있습니다. 다음은 두 가지 방법입니다.🎜rrreee🎜관련 권장 사항: 🎜🎜🎜🎜JS에서 문자열 전체 배열 알고리즘 분석🎜🎜🎜🎜🎜자바스크립트의 이벤트 흐름 내용에 대한 간략한 분석🎜🎜🎜
위 내용은 자바스크립트 배열에 일반적으로 사용되는 API 요약의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

去掉重复并排序的方法:1、使用“Array.from(new Set(arr))”或者“[…new Set(arr)]”语句,去掉数组中的重复元素,返回去重后的新数组;2、利用sort()对去重数组进行排序,语法“去重数组.sort()”。

本篇文章给大家带来了关于JavaScript的相关知识,其中主要介绍了关于Symbol类型、隐藏属性及全局注册表的相关问题,包括了Symbol类型的描述、Symbol不会隐式转字符串等问题,下面一起来看一下,希望对大家有帮助。

怎么制作文字轮播与图片轮播?大家第一想到的是不是利用js,其实利用纯CSS也能实现文字轮播与图片轮播,下面来看看实现方法,希望对大家有所帮助!

本篇文章给大家带来了关于JavaScript的相关知识,其中主要介绍了关于对象的构造函数和new操作符,构造函数是所有对象的成员方法中,最早被调用的那个,下面一起来看一下吧,希望对大家有帮助。

本篇文章给大家带来了关于JavaScript的相关知识,其中主要介绍了关于面向对象的相关问题,包括了属性描述符、数据描述符、存取描述符等等内容,下面一起来看一下,希望对大家有帮助。

方法:1、利用“点击元素对象.unbind("click");”方法,该方法可以移除被选元素的事件处理程序;2、利用“点击元素对象.off("click");”方法,该方法可以移除通过on()方法添加的事件处理程序。

foreach不是es6的方法。foreach是es3中一个遍历数组的方法,可以调用数组的每个元素,并将元素传给回调函数进行处理,语法“array.forEach(function(当前元素,索引,数组){...})”;该方法不处理空数组。

本篇文章给大家带来了关于JavaScript的相关知识,其中主要介绍了关于BOM操作的相关问题,包括了window对象的常见事件、JavaScript执行机制等等相关内容,下面一起来看一下,希望对大家有帮助。


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

SublimeText3 영어 버전
권장 사항: Win 버전, 코드 프롬프트 지원!

SecList
SecLists는 최고의 보안 테스터의 동반자입니다. 보안 평가 시 자주 사용되는 다양한 유형의 목록을 한 곳에 모아 놓은 것입니다. SecLists는 보안 테스터에게 필요할 수 있는 모든 목록을 편리하게 제공하여 보안 테스트를 더욱 효율적이고 생산적으로 만드는 데 도움이 됩니다. 목록 유형에는 사용자 이름, 비밀번호, URL, 퍼징 페이로드, 민감한 데이터 패턴, 웹 셸 등이 포함됩니다. 테스터는 이 저장소를 새로운 테스트 시스템으로 간단히 가져올 수 있으며 필요한 모든 유형의 목록에 액세스할 수 있습니다.

Dreamweaver Mac版
시각적 웹 개발 도구

Eclipse용 SAP NetWeaver 서버 어댑터
Eclipse를 SAP NetWeaver 애플리케이션 서버와 통합합니다.

SublimeText3 Linux 새 버전
SublimeText3 Linux 최신 버전
