⊗jsPmDstFP 311 of 505 menu

JavaScript 함수 매개변수 구조 분해

구조 분해에는 또 다른 매우 중요한 활용 영역이 있습니다 - 함수 매개변수 전달입니다. 핵심은 다음과 같습니다: 함수가 매개변수로 배열을 받는 경우, 우리는 함수 선언에서 직접 해당 배열을 어떻게 구조 분해할지 지정할 수 있습니다.

예제를 통해 살펴보겠습니다. 연도, 월, 일을 포함하는 배열을 매개변수로 받는 함수가 있다고 가정해 봅시다:

func([2025, 12, 31]);

이제 함수의 매개변수 부분에서 직접 이 배열을 어떤 변수들로 분해해야 하는지 지정해 보겠습니다:

function func([year, month, day]) { console.log(year); // 2025 출력 console.log(month); // 12 출력 console.log(day); // 31 출력 }

위의 구조는 함수의 하나의 매개변수로 간주해야 합니다. 원한다면 더 많은 매개변수를 추가할 수 있습니다:

func('str1', [2025, 12, 31], 'str2'); function func(param1, [year, month, day], param2) { console.log(param1); // 'str1' 출력 console.log(year); // 2025 출력 console.log(month); // 12 출력 console.log(day); // 31 출력 console.log(param2); // 'str2' 출력 }

다음 예제에서는 함수의 첫 번째와 두 번째 매개변수로 배열들이 전달되고 있으며, 우리는 둘 다 구조 분해합니다:

func([2025, 12, 31], [2026, 11, 30]); function func([year1, month1, day1], [year2, month2, day2]) { console.log(year1); // 2025 출력 console.log(month1); // 12 출력 console.log(day1); // 31 출력 console.log(year2); // 2026 출력 console.log(month2); // 11 출력 console.log(day2); // 30 출력 }

배운 이론에 따라 다음 코드를 구조 분해를 사용해 수정하세요:

function func(employee) { let name = employee[0]; let surname = employee[1]; let department = employee[2]; let position = employee[3]; let salary = employee[4]; } func( ['John', 'Smit', 'development', 'programmer', 2000] );

배운 이론에 따라 다음 코드를 구조 분해를 사용해 수정하세요:

function func(employee) { let name = employee[0]; let surname = employee[1]; let info = employee[2]; } func( ['John', 'Smit', 'development', 'programmer', 2000] );

배운 이론에 따라 다음 코드를 구조 분해를 사용해 수정하세요:

function func(employee) { let name = employee[0]; let surname = employee[1]; let department = employee[2]; let position; if (arr[3] !== undefined) { position = arr[3]; } else { position = 'junior'; } } func( ['John', 'Smit', 'development'] );

배운 이론에 따라 다음 코드를 구조 분해를 사용해 수정하세요:

function func(department, employee, hired) { let name = employee[0]; let surname = employee[1]; let year = hired[0]; let month = hired[1]; let day = hired[2]; } func( 'development', ['John', 'Smit'], [2018, 12, 31] );
한국어
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақКыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
우리는 웹사이트 운영, 분석 및 개인화를 위해 쿠키를 사용합니다. 데이터 처리는 개인정보 처리방침에 따라 이루어집니다.
모두 수락 설정 거부