배열에서 처음 N개의 요소를 가져오는 방법
저는 Javascript(ES6)/Facebook react로 작업하고 있으며 크기가 다른 배열의 처음 3개 요소를 가져오려고 합니다.저는 Linq take(n)에 상당하는 것을 하고 싶습니다.
Jsx 파일에는 다음이 있습니다.
var items = list.map(i => {
return (
<myview item={i} key={i.id} />
);
});
그럼 처음 세 가지 아이템을 얻기 위해서
var map = new Map(list);
map.size = 3;
var items = map(i => {
return (<SpotlightLandingGlobalInboxItem item={i} key={i.id} />);
});
지도에는 설정 기능이 없기 때문에 이것은 동작하지 않았습니다.
도와주실 수 있나요?
첫 번째를 얻으려면n
배열 요소, 사용
const slicedArray = array.slice(0, n);
당신이 찾고 있는 건
// ...inside the render() function
var size = 3;
var items = list.slice(0, size).map(i => {
return <myview item={i} key={i.id} />
});
return (
<div>
{items}
</div>
)
arr.length = n
의외일 수도 있지만length
어레이의 속성은 어레이 요소의 수를 가져오는 데 사용될 뿐만 아니라 쓰기 가능하며 어레이의 길이 MDN 링크를 설정하는 데도 사용할 수 있습니다.어레이가 변환됩니다.
불변성이나 메모리 할당을 원하지 않는 게임이라면 이것이 가장 빠른 방법입니다.
배열을 비우다
arr.length = 0
다음 방법으로 필터링할 수 있습니다.index
어레이의
var months = ['Jan', 'March', 'April', 'June'];
months = months.filter((month,idx) => idx < 2)
console.log(months);
슬라이스 메서드 사용
자바스크립트slice()
method는 배열의 일부를 처음부터 끝까지 선택한 새 배열 개체로 반환합니다. 여기서 start와 end는 해당 배열의 항목 인덱스를 나타냅니다.원래 배열은 변경되지 않습니다.
구문:slice(start, end)
예를 들어, 7개의 아이템이 있는 어레이가 있다고 합시다.[5,10,15,20,25,30,35]
이 어레이의 첫 번째 5가지 요소를 선택합니다.
let array = [5,10,15,20,25,30,35]
let newArray = array.slice(0,5)
console.log(newArray)
지도 기능을 사용하여 이 작업을 수행하지 마십시오.맵 함수를 사용하여 값을 다른 값으로 매핑해야 합니다.입력과 출력의 수가 일치하는 경우.
이 경우 어레이에서도 사용할 수 있는 필터 기능을 사용합니다.필터 기능은 특정 기준에 따라 선택적으로 값을 취할 때 사용됩니다.그러면 코드를 다음과 같이 쓸 수 있습니다.
var items = list
.filter((i, index) => (index < 3))
.map((i, index) => {
return (
<myview item={i} key={i.id} />
);
});
다음은 나에게 효과가 있었다.
array.slice( where_to_start_deleting, array.length )
여기 예가 있습니다.
var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.slice(2, fruits.length);
//Banana,Orange ->These first two we get as resultant
일단 이거 먹어봐n
목록에서 요소:
const slicedList = list.slice(0, n);
예:
const list = [1,2,3,4,5]
console.log(list.slice(0, 3)) // Should return [1,2,3]
console.log(list.slice(0, 10)) // Returns [1,2,3,4,5] since this is all we have in 1st 10 elements
간단한 예를 들어 다음과 같습니다.
var letters = ["a", "b", "c", "d"];
var letters_02 = letters.slice(0, 2);
console.log(letters_02)
출력: ["a", "b"]
var letters_12 = letters.slice(1, 2);
console.log(letters_12)
출력: ["b"]
주의:slice
는 얕은 복사만 제공하며 원래 어레이는 수정하지 않습니다.
Lodash를 사용하면take
다음과 같은 방법으로 이를 달성할 수 있습니다.
_.take([1, 2, 3]);
// => [1]
_.take([1, 2, 3], 2);
// => [1, 2]
_.take([1, 2, 3], 5);
// => [1, 2, 3]
_.take([1, 2, 3], 0);
// => []
slice() 메서드는 어레이 부분의 얕은 복사본을 처음부터 끝까지 선택한 새 어레이 개체로 반환합니다(끝은 포함되지 않음). 여기서 start와 end는 해당 어레이 내의 항목의 인덱스를 나타냅니다.원래 배열은 변경되지 않습니다.
const animals = ['ant', 'bison', 'camel', 'duck', 'elephant'];
console.log(animals.slice(2));
// expected output: Array ["camel", "duck", "elephant"]
console.log(animals.slice(2, 4));
// expected output: Array ["camel", "duck"]
console.log(animals.slice(1, 5));
// expected output: Array ["bison", "camel", "duck", "elephant"]
console.log(animals.slice(-2));
// expected output: Array ["duck", "elephant"]
console.log(animals.slice(2, -1));
// expected output: Array ["camel", "duck"]
LInQer를 사용하면 다음 작업을 수행할 수 있습니다.
Enumerable.from(list).take(3).toArray();
놓쳤을지도 , 「 문」, 「열린 문」을 사용하는 해, 「열린 문」을 이다.splice()
물론 어레이를 변경하는 것도 중요합니다.
const myArray = [
'one', 'two', 'three', 'four', 'five', 'six', 'seven',
]
myArray.splice(3)
console.log(myArray)
// expected output: ['one', 'two', 'three']
또, 보관하고 있는 것 이외의 어레이의 요소를 취득할 수도 있습니다.
const myArray = [
'one', 'two', 'three', 'four', 'five', 'six', 'seven',
]
const afterFirstThree = myArray.splice(3)
console.log(myArray)
// expected output: ['one', 'two', 'three']
console.log(afterFirstThree)
// expected output: ['four', 'five', 'six', 'seven']
// if n is larger than myArray.length the entire array is kept and if trying to grab the return, it will be an empty array
이 질문은 매우 오래되었지만 2021년부터는 ECMAScript(javascript)의 최신 기능으로 작성된 오브젝트에 대한 LINQ의 완전한 구현이 있습니다.
Github 저장소는 https://github.com/IlanAmoyal/WebPartyLinq 입니다.
언급URL : https://stackoverflow.com/questions/34883068/how-to-get-first-n-number-of-elements-from-an-array
'source' 카테고리의 다른 글
PHP는 T_PAAMAYIM_NEKUDOTAYIM을 기대합니까? (0) | 2022.12.13 |
---|---|
Kohana 기반 웹사이트의 속도와 확장성 최적화 (0) | 2022.12.13 |
uniqid는 얼마나 고유합니까? (0) | 2022.12.13 |
MySQL에서 어제 날짜 선택 (0) | 2022.12.13 |
메이븐 빌드에서 junit 테스트를 병렬로 실행하고 있습니까? (0) | 2022.12.13 |