>  기사  >  웹 프론트엔드  >  Javascript 괄호 "()"_javascript 기술의 모호함을 구문 분석합니다.

Javascript 괄호 "()"_javascript 기술의 모호함을 구문 분석합니다.

WBOY
WBOY원래의
2016-05-16 17:10:581577검색

자바스크립트에는 괄호의 5가지 의미가 있습니다

의미 1, 함수 선언 시 매개변수 목록

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

function func(arg1,arg2){
// ...
}

의미 체계 2, 일부 명령문과 함께 사용됨 특정 제한을 달성하려면 기능
코드 복사 코드는 다음과 같습니다.

/ / for in
for(var a in obj){
// ...
}

// if
if(boo){
와 함께 사용 //...
}

// while과 함께 사용됨
while(boo){
// ...
}

// 함께 사용됨 do while
do{
// ...
}while(boo)

참고: if, while 및 do while과 함께 사용하면 괄호가 표현식을 대체합니다. 결과는 암시적으로 부울 값으로 변환됩니다. JavaScript의 암시적 유형 변환을 참조하세요.

의미 체계 3, 값을 전달하기 위해 새로운 ​​(실제 매개변수)와 함께 사용

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

// name(이름)과 age(나이)라는 두 개의 필드가 있는 Person 클래스가 정의되었다고 가정합니다.
var p1 = new Person('Jack ',26) ;

의미론 4, 함수 또는 객체 메소드에 대한 호출 연산자(매개변수가 정의된 경우 실제 매개변수도 의미론 3과 동일한 방식으로 전달될 수 있음)
코드 복사 코드는 다음과 같습니다.

// 함수 func를 가정합니다.
func();

// 객체 obj가 정의되었고 func 메소드가
obj.func()

있다고 가정합니다. 는 typeof 연산자인데 어떤 사람들은 이것을 이렇게 사용하기를 좋아합니다

유형(xxx);

typeof 뒤의 괄호는 의미 4(즉, 함수 호출이 아님)가 아니라 나중에 언급하는 의미 5라는 점에 유의하세요. 나는 보통 다음 괄호 없이 typeof를 사용합니다.

의미 5, 강제 표현 평가

Semantic 5에 관해서는 eval을 사용하여 JSON을 구문 분석하는 것이 가장 익숙합니다.

코드 복사 코드는 다음과 같습니다. 🎜>
function strToJson(str){
// eval의 문자열 양쪽에 강제 연산자()가 추가됩니다.
var json = eval('(' str ')');
return json
}

또 다른 예는 익명 함수 자체 실행입니다.

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