자바 스크립트 함수 호출
라고 자바 스크립트 함수의 4 종류가 있습니다.
이 모드 초기화가 각각 다른 방법.
이 키워드
일반적으로, 자바 스크립트,이 실행 된 현재 객체의 기능을 의미한다.
이 예약 된 키워드가 있음을,이 값을 수정할 수 없습니다. |
자바 스크립트 함수 호출
이전 섹션에서 우리는 함수를 만드는 방법을 배웠습니다.
함수가 호출 된 후 기능 코드가 실행된다.
함수 호출로
위의 함수는 모든 객체에 속하지 않습니다. 그러나, 자바 스크립트, 항상 기본 전체 객체이다.
HTML에서, 기본 전체 객체는 HTML 페이지 자체이므로,이 함수는 HTML 페이지의 일부이다.
브라우저 페이지 개체 브라우저 창 (창 개체)에서. 기능을 통해 자동으로 윈도우 객체의 기능을하게된다.
하여 myFunction ()와 window.myFunction ()는 동일합니다 :
예
는 * B를 반환;
}
window.myFunction (10, 2); // window.myFunction (10, 2) (20)를 반환
»시도
이는 일반적으로 사용되는 방법은 자바 스크립트 함수를 호출이지만 좋은 프로그래밍 방법 글로벌 변수, 메소드 또는 충돌 버그 명명 일으킬 기능 아니다. |
전역 개체
함수 자체가 객체가 아닌 호출하면?,이 값은 전역 객체가 될 것이다.
웹 브라우저에서 브라우저 윈도우 전역 객체 (객체 창)이다.
이 반환 값의 예는 창 목적 :
전화 세계 객체와 기능이 글로벌 객체의 값이됩니다. 변수는 프로그램이 중단 될 가능성이 높습니다으로 창 개체를 사용합니다. |
메소드 호출의 함수로서
자바 스크립트에서는 객체 방법으로 정의 된 함수를 사용할 수 있습니다.
다음의 예는 객체 (즉, myObject)을 작성, 객체는 두 가지 속성 (firstName과 lastName 속성) 및 방법 (fullName의)가 있습니다 :
예
firstName을 "존",
이 lastName "미상"
fullName의 : 함수 () {
this.firstName + ""+ this.lastName를 반환;
}
}
myObject.fullName (); // 반환 "홍길동"
»시도
전체 이름 방법은 함수이다. 기능은 객체에 속한다. myObject에 함수의 소유자이다.
이 객체는 자바 스크립트 코드가 있습니다. 값이 인스턴스 객체 인 myObject.
다음 테스트! 하면 FullName이 방법과 반환 값을 수정 :
예
firstName을 "존",
이 lastName "미상"
fullName의 : 함수 () {
이를 반환;
}
}
myObject.fullName (); // 반환 [개체 개체 (개체의 소유자)
»시도
객체 메소드 호출 등의 기능, 그래서 이것은 객체 자체의 값이됩니다. |
생성자 함수 호출을 사용하여
함수가 새로운 키워드를 사용하기 전에 호출하면, 생성자가 호출된다.
이 새로운 기능을 만들처럼 보이지만, 사실은 자바 스크립트 함수는 객체가 다시 만들어 있습니다 :
예
myFunction 함수 (ARG1, ARG2) {
this.firstName = ARG1;
this.lastName = ARG2;
}
//이 새로운 객체를 생성
VAR X = 새로운하여 myFunction ( "존", "미상");
x.firstName; // 반환 "존"
»시도
새로운 객체를 생성하는 생성자를 호출합니다. 새로운 객체는 속성과 생성자의 방법을 상속합니다.
생성자이 키워드는 값이 없습니다. 이 값은 함수 호출에서 개체 (새 개체)의 인스턴스를 만들 수 있습니다. |
메소드 호출 함수의 함수로서
자바 스크립트에서 함수는 객체입니다. 자바 스크립트 함수는 속성과 메소드가 있습니다.
() 함수는 미리 정의 된 방법이다 ()를 호출하고 적용 할 수 있습니다. 두 방법은 함수를 호출하는 데 사용할 수 있습니다, 첫 번째 인수 방법은 두 객체 자체 있어야합니다.
예
는 * B를 반환;
}
myFunction.call (myObject에, 10, 2) // 20 반환
예
는 * B를 반환;
}
에서 myArray = [10,2]
myFunction.apply (myObject에,에서 myArray); // 20을 반환
두 방법 모두 첫 번째 매개 변수로 객체 자체를 사용합니다. 즉, 적용 전달 파라미터의 배열 통과 배열로 결합 된 복수의 파라미터, 및 호 파라미터 (두번째 인수의 선두로부터) 전달하는 것에 호출 차이는 두 번째 인수는 점이다.
자바 스크립트 모드 엄격한 (strict 모드)에서, 첫 번째 인자의 함수 호출은 파라미터가 목적하지 않은 경우에도,이 값이 될 것이다.
첫 번째 매개 변수의 값이 null 또는 정의되지 않은 경우 자바 스크립트가 아닌 엄격 모드 (비 엄격 모드)에서는, 대신 전역 객체를 사용합니다.
이 방법 당신은 전화로 () 값을 설정하거나) (적용하고, 이미 존재하는 객체의 새로운 방법으로 호출 할 수 있습니다. |