programing

jQuery에서 "{ }"를 사용하는 이유는 무엇입니까?

css3 2023. 4. 5. 22:08

jQuery에서 "{ }"를 사용하는 이유는 무엇입니까?

왜 사용하는가?({ })?

위임장인가?

이 구문을 사용하는 것은 무엇을 의미합니까?

그걸로 뭘 싸요?

예를 들어 다음과 같습니다.

$.ajaxSetup ({ // <-- THIS
    error: fError,
    compelete: fComp,
    success: fSucc
}); // <-- AND THIS

{}는 JavaScript의 객체 표기법입니다.예를 들어 다음과 같습니다.

$('selector').plugin({ option1: 'value' });

이 경우 설정을 포함하는 개체를 플러그인으로 전달합니다.플러그인은 이를 오브젝트로 처리할 수 있습니다. 예를 들어 다음과 같습니다.

settings.option1 //the option you passed in.

물론 훨씬 더 많이 사용되지만, 이것은 jQuery에서 가장 일반적인 예입니다., , 함수 등에 대해서도 마찬가지입니다.속성을 사용하는 모든 항목은 일반적으로 이 형식을 사용합니다.


요청에 따라 다음 몇 가지 예를 제시하겠습니다.
전달된 오브젝트 내의 모든 오브젝트는 속성뿐만 아니라 다음과 같이 함수가 될 수 있습니다.

$("<input>", {
  type: "text",
  focusin: function() { alert("Hi, you focused me!"); }
});    

그러면 해당 입력의 포커스이벤트가 경보로 설정됩니다.다른 하나는 다음과 같이 개체를 확장하여 개체에 속성을 추가하는 것입니다.

var person = { first_name: "John" };
$.extend(person, { last_name: "Smith" });
//equivalent to: 
person.last_name = "Smith";
//or:
person["last_name"] = "Smith";

지금이다person가지고 있다last_name소유물.이는 기본 설정을 선택한 다음 전달한 설정을 병합하고 지정한 설정으로 덮어쓰고 나머지는 기본값을 사용하는 플러그인에 의해 자주 사용됩니다.

왜 쓰는 거죠?뭐...이것이 JavaScript가 작동하는 방식이며 jQuery 정신에서는 매우 간결하고 유연한 정보 전달 방법입니다.

내 말은, 우리가 포장하는 건?

아니요. JavaScript 객체 표기법(JSON)입니다.이 예에서는 함수를 호출하고 있습니다.ajaxSetup다음과 같은 속성을 가진 개체를 사용합니다.

error: fError,
compelete: fComp,
success: fSucc

예를 들어, "사용자" 개체를 만들려면 다음과 같이 쓸 수 있습니다.

user = { 
    "name":"Oscar", 
    "lastName":"Reyes"
};

그런 다음 해당 속성 중 하나를 사용합니다.

alert( a.name );

쇼: 오스카

(코드에 있는) 오브젝트가 생성되어 인수로 전달됩니다.

이는 다음과 같습니다.

var setUpInfo = {
    "error": fError,
    "compelete": fComp,
    "success": fSucc
};  

$.ajaxSetup( setUpInfo );

이는 JavaScript 객체 리터럴 또는 보다 구체적으로 Ajax를 통해 매개 변수를 전송하는 경우 JSON입니다.JSON은 JavaScript 객체 리터럴의 서브셋입니다.

예를 들어 다음과 같습니다.

// This is JSON data sent via the Ajax request (JSON is subset of JavaScript object literals)
var json = {id: 1, first_name: "John", last_name: "Smith"};

// This is a JavaScript object literal, it is not used for transfer of data so doesn't need to be JSON
var jsol = {type: 'POST', url: url, data: json};

$.ajax(jsol);

자세한 내용은 여기를 참조하십시오.

문제는 표기법({ })에 관한 것이었다.

이 컨텍스트에서는 $.ajaxSetup 등의 식 뒤에 괄호("...")가 있으면 식에 의해 지정된 함수가 호출됩니다.

괄호 안의 식(쉼표로 구분된 식 목록일 수 있음)은 함수에 전달되는 인수인 값(또는 값 목록)이 됩니다.

마지막으로, "{...}"은 표현식 컨텍스트에서 사용되며 지정된 이름 값 속성을 사용하여 개체를 구성합니다.이것은 JSON과 비슷하지만 일반적으로는 합법적인 JS 객체 리터럴입니다.

이 문맥에서 의미하는 것은 다음과 같습니다.

$("#theId").click( function() { /* body here */ } );

'하다'는( function() {})을 사용하다하지만 예가 없다면, 그게 당신이 의미하는 것인지 확신할 수 없습니다.

언급URL : https://stackoverflow.com/questions/2594734/why-are-we-using-in-jquery