이 글은 ES6의 기본 매개변수(코드 예제)에 대한 소개를 제공합니다. 여기에는 특정 참조 값이 있습니다. 도움이 필요한 친구들이 참고할 수 있기를 바랍니다.
function [name]([param1[ = defaultValue1 ][, ..., paramN[ = defaultValueN ]]]) { statements }
function sum(a=0, b=0){ return a+b } sum() // 0 sum(1) // 1 sum(1, 2) // 3
Use babel
Translate
function sum() { var a = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0; var b = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0; return a + b; }
바벨 번역 결과를 보면 기본 매개변수는 두 가지 상황만 확인하는 것을 볼 수 있습니다
매개변수가 전달되지 않습니다
Pass Enter undefed
function sum(a=0){ return typeof a } sum() // 'number' sum(undefined)// 'number' sum(1) // 'number' sum('1') // 'string' sum(null) // 'object' sum(false)// 'boolean'
이전 매개변수를 후속 매개변수의 기본값으로 사용할 수 있으며, 이전 매개변수에 단순 덧셈, 뺄셈 등의 특수 연산을 수행할 수도 있습니다. 곱셈과 나눗셈
function sum(a=1, b=a, c=a+b){ return [a, b, c] } sum() // [1, 2, 3] sum(2) // [2, 2, 4] sum(2,2) // [2, 2, 4] sum(2,2,2) // [2, 2, 2]
기본 매개변수를 지정하면 함수도 호출할 수 있습니다. 함수를 호출할 수 있다는 것은 이미 모든 것이 가능하다는 것을 보여줍니다~
function sum(a=1, b=(()=>4)()){ return [a, b] } sum() // [1, 4] sum(2) // [2, 4] sum(2,2) // [2, 2]
참고: 함수 내부에 선언된 함수는 기본값으로 호출할 수 없습니다
function sum(a=1, b=num2()){ function num2(){ return 4 } return [a, b] } sum() // Uncaught ReferenceError: num2 is not defined
매개변수는 여전히 호출에 의해 호출됩니다. 전송 순서는 하나씩 적용되며, 형식 매개변수 할당은 기본값이 있다고 해서 건너뛰지 않습니다
function sum(a=1, b ){ return [a, b] } sum() // [1, undefined] sum(2)// [2, undefined] sum(1,2) //[1, 2]
이 시리즈에는 아직 구조가 나타나지 않았지만 기본 매개변수도 구조에 사용할 수 있습니다. 통과
function sum([x, y] = [1, 2], {z: z} = {z: 3}) { return [x, y, z]; } sum() // [1, 2, 3] sum([2,4],{z: 6}) // [2, 4, 6]
위 내용은 ES6의 기본 매개변수 소개(코드 예시)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!