>  기사  >  웹 프론트엔드  >  6가지 JS 배열 사용 예시 요약

6가지 JS 배열 사용 예시 요약

不言
不言원래의
2018-07-20 15:20:389537검색

js를 학습하는 과정에서 js 배열의 방법을 익히는 것이 필요합니다. 여기에서는 모두가 서로 배울 수 있도록 js 배열에서 일반적으로 사용되는 방법을 요약했습니다. 더 이상 고민하지 않고 바로 본문으로 넘어가겠습니다.

1. js 객체 상속 방법

Array는 객체의 toString을 상속하는 특수 객체입니다. (), toLocaleString() 및 valueOf() 메서드

1.toString()

toString 메서드는 다음의 각 요소에서 반환된 값을 반환합니다. 배열 값의 문자열 형태로 연결된 기호로 구분된 문자열은 매개변수 없이 Join()이 반환한 문자열과 동일합니다. 🎜#

toLocaleString()은 toString의 지역화된 버전입니다. (). 일반적인 상황에서는 toString()과 동일하게 반환됩니다. 숫자가 3자리를 초과하면 자동으로 형식이 지정되며 Date

[1,2,3].toString()//'1,2,3'
['a','b','c'].toString()//'a,b,c'
[1,[2,3]].toString()//'1,2,3'

3도 가능합니다. .valueOf()

valueOf()는 배열 객체의 경우 자체 반환

var a = 3333; a.toLocaleString()//3,333
var b = new Date; b.toLocaleString()//2018/7/13 下午3:43:39
#🎜🎜 #

2. js 배열 변환 방법

1.join()#🎜 🎜#Array.join()은 Array.split의 역연산입니다. () 전자는 배열을 매개변수 단위(기본값은 쉼표)로 문자열로 병합하고, 후자는 문자열을 배열로 자릅니다. 배열 및 배열 유사 객체를 지원하지만 객체는 지원하지 않습니다

var a = [1,2,3]; a.valueOf()//[1,2,3];
a.valueOf() instanceOf() Array//true

3. js 배열 데이터 구조 연산 방법

배열의 데이터 구조는 스택 구조(후입, 후출)와 큐 구조(선입선출)로 구분됩니다. 스택 구조(후입, 선출) 마지막 아웃):

# 🎜🎜#

1.push()

push()는 끝에 원하는 수의 매개변수를 추가하는 것입니다. 하나씩 원래 배열을 변경하고, 배열 길이를 수정하고 #🎜 🎜#

var a = [1,2,3,4,5]; a.join()//'1,2,3,4,5'
var b = [1,undefined,2,null,3]; b.join()//'1,,2,,3'
var c = Array.prototype; c.join.call('hello','-')//'h-e-l-l-o'
var d = {1:'a',2:'b',length:3}; d.join()//'a,b'
var e = {1:'a',2:'b'}; e.join()//''
push()를 개체에 매개변수를 추가할 수도 있습니다. 추가한 후에는 객체가 배열 객체가 됩니다. 새로 추가된 요소의 키는 배열의 인덱스에 해당하며 객체의 길이 속성은

var c = {}; .push.call(c, 1)//{0:1,길이:1}

2.pop()

# 🎜🎜#pop() 배열의 마지막 항목을 제거하고 배열 길이를 반환한 다음 배열 길이를 수정하여 원래 배열을 변경합니다.

var a = [1,2]; a.push('11,22') - a//3 - [1,2,33,44]
var b = [3,4]; a.push([33.44]) - a//2 - [1,2,[33,44]]
Array.prototype.push.apply(a,b)//[1,2,3,4]
Array.prototype.push.call(a,b)//[1,2,[3,4]]


큐 구조(앞으로 먼저 나가기) ):

# 🎜🎜#1.shift()

shift()는 배열의 첫 번째 항목을 제거하고 제거된 요소를 반환합니다. , 그런 다음 배열의 길이를 수정하여 배열을 변경합니다.#🎜🎜 #

var a = [1,2,3]; a.pop() - a//3 - [1,2];
//如果数组本身是空数组,则返回undefined
var b = []; b.pop()//undefined

2.unshift()

unshift()는 매개변수를 다음에 추가합니다. 배열의 시작 위치를 사용하여 배열 길이를 수정하고 배열 길이를 반환하여 배열을 변경합니다#🎜 🎜#
var a = [1,2,3]; a.shift() - a//1 - [2,3];

4.js 배열 정렬 방법

#🎜 🎜#

1.reverse()

reverse()는 배열의 순서를 바꾸고 원래 배열을 수정하는 데 사용됩니다. 현재 배열을 반환합니다.

var a = [1,2,3]; a.unshift(4,5) - a//5 - [1,2,3,4,5]

2.sort()# 🎜🎜#sort()는 기본적으로 배열을 오름차순으로 변경합니다. sort는 toString을 호출합니다. ()는 기본적으로 각 배열 항목에 대해

 var a = [1,2,4,3,5]; a.reverse()// [5,3,4,2,1];
배열에 정의되지 않은 내용이 포함되어 있으면 정의되지 않은 경우 끝까지 정렬됩니다.

var a = [1,2,3,4,5]; a.sort() //[1,2,3,4,5]
var b = [1,2,12,13]; c.sort() //[1,12,13,2]
var c = [1,2,'1a','2b']; c.sort() //[1,'1a',2,'2b'];

정렬에 매개변수가 있는 경우(매개변수는 함수여야 합니다) ; 함수 반환 값이 양수이거나 첫 번째 매개변수에서 두 번째 매개변수를 뺀 값이면 양수 순서입니다. 문자열이 있으면 최소화됩니다. 시작 위치에 순서대로 넣어주세요

var d = [1,3,undefined,2]; d.sort() //[1,2,3,undefined]
정렬 매개변수가 함수에 의해 반환된 임의의 양수 또는 음수인 경우 배열 책 순서는 임의입니다

function sortNumber(a,b){
  return b-a
}
var e = [1,2,3]; e.sort(sortNumber)//[3,2,1]; 
var f = ['1a',1,'2b',2,3]; f.sort()//['1a','2b',3,2,1];

# 🎜🎜#3 .concat()

concat() 메소드는 현재 배열을 기반으로 새 배열을 생성하고 원래 배열에 영향을 주지 않고 수신된 매개변수를 끝에 넣습니다#🎜🎜 #

function sortRandom(a,b){
  return Math.random()-0.5
}
var g = [1,2,3,4,5]; g.sort(sortRandom)//[2,1,5,4,3](此为随机顺序)

4.slice()

slice() 메서드는 첫 번째 매개변수의 시작 위치와 두 번째 매개변수의 끝 자리를 가로챕니다. 그리고 새로운 배열을 만듭니다. 매개변수가 없으면 모두 차단

var a = [1,2]; b = [3,4]; a.concat - a//[1,2,3,4] - [1,2];五.创建子数组方法

5.js 배열 삭제 방법

# 🎜🎜 #1.splice()

splice()는 3개의 매개변수를 받습니다. 첫 번째 매개변수는 삭제할 수량에 필요합니다. 매개변수가 하나인 경우 두 번째 매개변수 이후에는 모든 배열이 삭제됩니다. 반환되는 것은 삭제된 배열입니다.

var a = [1,2,3,4,5];a.slice(2,4)//[3,4,5]
var a = [1,2,3,4,5];a.slice(2)//[3,4,5]
var a = [1,2,3,4,5];a.slice(-3)//[3,4,5] 
var a = [3,4,5];a.slice()//[3,4,5]
2.indexOf()

indexOf()는 첫 번째 매개변수가 처음 나타나는 위치를 반환합니다. 두 번째 매개변수 n이 나타날 때 반환되는 것은 n번째 요소 이전의 요소가 처음 나타나는지 여부를 계산하지 않는다는 것입니다

var a = [1,2,3]; a.splice(2,0,1)-a//[]-[1,2,1,3];
var b = [1,2,3]; a.splice(2,1,1)-a//[3]-[1,2,1];
var c = [1,2,3]; a.splice(2)-a//[1,2,3]-[]
var d = [1,2,3]; a.splice(2,1,4,5)-a//[3]-[1,2,4,5]
3.lastIndexOf()#🎜 🎜#lastIndexOf()와 indexOf()의 차이점은 오른쪽에서 왼쪽으로 검색하는 것입니다.

var a = ['a','b','c',a,2,3]; a.indexOf('a')//0
var a = ['a','b','c',a,2,3]; a.indexOf('a',1)//4
var a = ['a','b','c',1,2,3]; a.indexOf('a',-5)//0

6.js 배열 병합 방법

1.reduce()

reduce() 메서드의 첫 번째 매개 변수는 지정된 함수입니다. 배열은 반복되고 사용자 정의 양식으로 결합되어 단일 값을 생성합니다. 4개의 매개변수(초기변수, 현재변수, 현재 인덱스, 원본 배열 객체)를 받습니다. 두 번째 매개변수는 입력할 초기값을 지정합니다.

var a = ['a','b','c',a,2,3]; a.indexOf('a')//4
var a = ['a','b','c',a,2,3]; a.indexOf('a',1)//0
var a = ['a','b','c',a,2,3]; a.indexOf('a',-1)//0

2.reduceRight()

reduceRight()는 인덱스 값이 높은 것부터 낮은 것까지라는 점에서 Reduce()와 다릅니다.# 🎜🎜#

var a = [1,2,3,4,5];
a.reduce(function(x,y){return x+y}) // 15
a.reduce(function(x,y){return x+y},3)//18

Seven.js 배열 반복 방법

1.map()#🎜🎜 ##🎜 🎜#map()은 함수 배열의 각 항목에 대해 지정된 함수를 실행하고 각 함수 호출의 결과를 반환하여 배열을 형성합니다

var a = [1,2,3]; a.map(function(item,index,arr){return item*2})
//[2,4,6]
var b = ['aa','bb','cc'];
a.map(function(item,index,b){return this[item]})
//['aa','bb','cc'];

map()日常中多用于去解析对象中的属性

var c = {[name:1,value:2],[name:11,value:22]}
c.map(function(item){return item.name})//[1,11]

2.forEach()

forEach()给函数数组的每一项运行指定的函数(于map()对比不同于没有返回值)。forEach()可接受第二参数,用来改变this的指向。

var a = {
    name:'111',
    arr:[1,2,3],
    value:function(){
        console.log(this);
        this.arr.forEach(function(){
        console.log(this);
        })
    }
}//循环外this指向value方法,循环内指向a对象
var b = {
  name:'111',
  arr:[1,2,3],
  value:function(){
    console.log(this);
    this.arr.forEach(function(){
      console.log(this);
    },this)
  }
}//全文的this全部都指向对象a

3.filter()

filter()给函数数组的每一项运行指定的函数,并返回制定规则返回True的项的数组。该方法多用于查询,第二个参数值指定this指向

var a = [1,2,3];a.filter(function(item){return item>1)//[2,3];

4.some()

filter()给函数数组的每一项运行指定的函数进行筛选,如果都返回false,则返回false。反之则返回true

a = [1,2,3,4,5];
a.some(function(item){return item === 3;})//true
a.some(function(item){return item === 6;})//false

5.every()

every()给函数数组的每一项运行指定的函数进行筛选,如果有返回false,则返回false。反之如果全部返回true,则返回true;空数组会返回true

a = [1,2,3,4,5];
a.every(function(item){return item === 3;})//false
a.every(function(item){return item < 6;})//true

相关推荐:

JS中数组重排序方法

js数组方法

위 내용은 6가지 JS 배열 사용 예시 요약의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.