>웹 프론트엔드 >JS 튜토리얼 >javascript에서 명명된 함수를 호출하는 네 가지 방법 권장 페이지 1/3_javascript 기술

javascript에서 명명된 함수를 호출하는 네 가지 방법 권장 페이지 1/3_javascript 기술

PHP中文网
PHP中文网원래의
2016-05-16 18:50:381407검색

네 가지 메소드의 실행 결과에는 차이가 없습니다. 하지만 함수에 반환 값이 있는 경우 new로 호출할 때 약간 실망할 수 있습니다.

1. () 괄호 연산자 가장 일반적으로 사용되는 것은 함수를 호출하는 () 연산자입니다

코드 복사 코드는 다음과 같습니다. 🎜>

//매개변수 없음 function fun1
function fun1() {
alert('내가 불렀습니다')
}
fun1()

// 매개변수가 포함된 함수 fun2
function fun2(param) {
alert(param)
}
fun2('내가 호출되었습니다')

ECMAScript 3 이후에 call을 추가하고 Function에 적용하면
2가지 종류가 있습니다. 2. call

코드 복사 코드는 다음과 같습니다.

//매개변수 없음 function fun1
function fun1() {
alert('내가 호출되었습니다')
}
fun1.call(null); //매개변수가 있는 fun2 함수
function fun2(param) {
alert(param)
}
fun2.call(null,'내가 호출되었습니다')



3. 적용



코드 복사

코드는 다음과 같습니다.

//매개변수 없음 함수 fun1

function fun1 () {

alert('내가 불렀습니다');
}
fun1.apply(null)

//매개변수 function fun2
function fun2(param) {
alert(param);
}
fun2.apply(null,['전화받았습니다'])



4. new(

권장하지 않음) 이 방법

)

코드를 복사하세요

코드는 다음과 같습니다.

//매개변수 없음 function fun1

function fun1 ( ) {

alert('내가 불렀습니다');
}
new fun1()


//매개변수가 있는 fun2 함수
function fun2(param) {
alert(param);
}
new fun2('I was received')



자, 위의 호출 메소드에는 4가지 실행 메소드가 있습니다. 결과에는 차이가 없습니다. 하지만 함수에 반환 값이 있는 경우 new로 호출할 때 약간 실망할 수 있습니다.



코드 복사

코드는 다음과 같습니다.

//반환 값이 있는 fun 함수

function fun() {

alert( '나는 전화받았습니다');
return "jack";
}

var c = new fun()
alert(c);//[object Object] , 왜 "잭"이 아닌가?



이렇게 바뀌었는데,



코드를 복사하세요

코드는 다음과 같습니다.

/ /반환 값이 있습니다. Function fun

function fun() {

alert('I was Called')
return {name:'jack'}

var c = new fun();
alert(c.name);//jack, 다시 정상적으로 반환됨



좋아요, 요약하자면, new 메소드를 사용하여 함수를 호출할 때입니다. 반환값이 있는 경우 반환값이 String, Number, Boolean 등과 같은 JavaScript 내장형(기본형)인 경우 반환값이 객체, 함수인 경우에는 값을 반환하지 않습니다. , 배열 및 기타 객체 유형의 경우 객체, 함수, 배열이 반환됩니다.

반환값이 내장형(기본형)일 때 new fun()은 정확히 무엇을 반환하나요? 다음 기사에서는 새 메서드 호출에 대해 자세히 설명합니다.





성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.