객체 지향 JavaScript — 매개변수 및 내장 함수
지금 http://jauyeung.net/subscribe/에서 내 이메일 목록을 구독하십시오.
JavaScript는 부분적으로 객체 지향 언어입니다.
JavaScript를 배우려면 JavaScript의 객체 지향 부분을 배워야 합니다.
이 기사에서는 다양한 종류의 함수와 매개변수를 살펴보겠습니다.
기본 매개변수
함수에서 기본 매개변수를 설정할 수 있습니다.
그렇게 하려면 매개변수에 값을 할당하기만 하면 됩니다.
우리는 쓸 수있다:
function render(fogLevel = 0, sparkLevel = 100) {
console.log(`Fog Level: ${fogLevel} and spark level:
${sparkLevel}`)
}
render
및 fogLevel
매개변수가 있는 sparkLevel
함수가 있습니다.그리고 기본값을 각각 0과 100으로 설정했습니다.
그런 다음 우리가 가지고있는 경우 :
render()
그런 다음 우리는 다음을 얻습니다.
'Fog Level: 0 and spark level: 100'
기본 매개변수에는 자체 범위가 있습니다.
범위는 외부 기능 범위와 내부 기능 범위 사이에 끼워져 있습니다.
따라서 다음이 있는 경우:
let scope = "outer";
function scoper(val = scope) {
let scope = "inner";
console.log(val);
}
scoper();
그러면
val
는 함수 외부에서 'outer'
를 취하기 때문에 scope
가 됩니다.나머지 매개변수
나머지 매개변수를 사용하면 함수에서 임의의 수의 인수를 얻을 수 있습니다.
예를 들어 다음과 같이 작성할 수 있습니다.
function getTodos(...todos) {
console.log(Array.isArray(todos));
console.log(todos)
}
그런 다음 첫 번째 콘솔 로그는
true
입니다.그리고 두 번째는
[“eat”, “drink”, “sleep”]
.todos
앞에 나머지 연산자가 있기 때문에 배열입니다.이렇게 하면 인수를 가져와 모두
todos
배열에 넣습니다.그리고 우리는 두 번째 콘솔 로그로 그것들을 모두 얻습니다.
스프레드 연산자
확산 연산자를 사용하면 배열 항목을 함수의 인수로 확산할 수 있습니다.
배열의 값을 퍼뜨리는 데 사용할 수도 있습니다.
예를 들어 다음과 같이 작성할 수 있습니다.
const min = Math.min(...[1, 2, 3]);
이것은 다음과 같은 기존 방식을 대체합니다.
const min = Math.min.apply(undefined, [1, 2, 3]);
스프레드 연산자는 이해하기 쉽고 더 짧습니다.
1, 2, 3은
Math.min
의 인수입니다.확산 연산자를 사용하여 배열 항목을 다른 배열로 병합할 수도 있습니다.
예를 들어 다음과 같이 작성할 수 있습니다.
const midweek = ['Wed', 'Thu'];
const weekend = ['Sat', 'Sun'];
const week = ['Mon', 'Tue', ...midweek, 'Fri', ...weekend]
그러면
week
는 다음과 같습니다.["Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun"]
미리 정의된 함수
JavaScript에는 미리 정의된 여러 함수가 있습니다.
그들은:
parseInt()
parseFloat()
isNaN()
isFinite()
encodeURI()
decodeURI()
encodeURIComponent()
decodeURIComponent()
eval()
parseInt
숫자가 아닌 값을 정수로 구문 분석합니다.예를 들어 다음과 같이 작성하여
parseInt
를 사용할 수 있습니다.parseInt('123')
parseFloat
숫자가 아닌 값을 부동 소수점 숫자로 구문 분석합니다.그리고 우리는
123
를 얻습니다.예를 들어 다음과 같이 작성하여
parseFloat
를 사용할 수 있습니다.parseFloat('123.45')
그리고 우리는
123.45
를 얻습니다.isNaN
는 값이 NaN
인지 확인합니다. .따라서 다음이 있는 경우:
isNaN(NaN)
true
.isFinite
값이 유한 숫자인지 확인합니다.따라서 다음과 같이 작성할 수 있습니다.
isFinite(Infinity)
그리고 우리는
false
를 얻습니다.encodeURI
를 사용하여 문자열을 URI로 인코딩할 수 있습니다.예를 들어 다음이 있는 경우:
const url = 'http://www.example.com/foo?bar=this and that';
console.log(encodeURI(url));
그리고 우리는 다음을 얻습니다:
'http://www.example.com/foo?bar=this%20and%20that'
그리고
decodeURI
를 사용하여 URI 문자열을 디코딩할 수 있습니다.encoudeURIComponent
및 decodeURIComponent
는 URI의 일부에 대해 동일한 작업을 수행할 수 있습니다.우리가 쓰는 경우 :
const url = 'http://www.example.com/foo?bar=this and that';
console.log(encodeURIComponent(url));
그리고 우리는 다음을 얻습니다:
'http%3A%2F%2Fwww.example.com%2Ffoo%3Fbar%3Dthis%20and%20that'
eval
문자열에서 코드를 실행할 수 있습니다. 이것은 누구나 악의적인 문자열을 전달할 수 있으므로 사용해서는 안 되는 것입니다.그리고 문자열의 코드는 최적화할 수 없습니다.
결론
기본 매개변수를 사용하면 매개변수가 인수로 설정되지 않은 경우 매개변수의 기본값을 설정할 수 있습니다.
JavaScript에는 사용할 수 있는 몇 가지 미리 정의된 기능이 있습니다.
나머지 및 스프레드 연산자는 인수를 처리하는 데 편리합니다.
Reference
이 문제에 관하여(객체 지향 JavaScript — 매개변수 및 내장 함수), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/aumayeung/object-oriented-javascript-parameters-and-built-in-functions-4o46텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)