javascript 교묘 한 배열 제거

775 단어 JavaScript
오늘 한 무리의 친구 가 갑자기 문 제 를 제기 하 였 는데, 개인 적 으로 매우 재미있다 고 생각 하 는데, 단지 몇 분 이 걸 렸 으 니, 여러분 먼저 보 셔 도 됩 니 다.
청 두 JX (109340 * * *) 20: 16: 38 [2, 3, 4, 2, [2, 3], [3, 4], 3] 어떻게 다시 얻 을 수 있 습 니까 [2, 3, 4]
그것 은 우선 어떻게 반복 하 는 지 를 고려 하고 배열 을 평면 화 하 는 것 이다. 일반적인 생각 은 모두 재 귀 를 해서 배열 의 등급 을 판단 하 는 것 이다.저도 처음에 그렇게 생각 했 는데 갑자기 전에 본 방법 이 생각 났 어 요. 너무 재 밌 어 요. 코드 는 다음 과 같 아 요.


```
var arr = [2,3,4,2,[2,3],[3,4],3];
[].concat.apply([], arr) //[2, 3, 4, 2, 2, 3, 3, 4, 3]`
```
       ,  
    `[2, 3, 4, 2, 2, 3, 3, 4, 3]`

```
var arr = [2,3,4,2,[2,3],[3,4],3];
function noRepeat(arr){
	var res=[];
	[].concat.apply([],arr).forEach(function(item){if(res.indexOf(item)== -1){res.push(item)}});
	return res;
}
noRepeat(arr);//[2, 3, 4]
```
       , ,          ~

좋은 웹페이지 즐겨찾기