>웹 프론트엔드 >JS 튜토리얼 >JavaScript의 객체 구문

JavaScript의 객체 구문

Christopher Nolan
Christopher Nolan원래의
2025-02-24 09:52:10515검색

Object Syntax in JavaScript 키 포인트

많은 내장 데이터 유형이 객체로 표시되므로 JavaScript 객체 이해는 언어의 성공적인 개발에 필수적입니다. 객체는 프리미티브 및 기타 객체에서 구축 된 복합 데이터 유형이며 그 속성은 객체의 측면을 설명합니다. 객체는 다양한 방식으로 JavaScript로 생성 및 액세스 할 수 있습니다. 객체 문자 그럴 표기법 (버팀대)은 키/값 쌍이있는 물체를 빠르게 생성 할 수 있습니다. 객체 속성은 DOT 표기법 또는 정사각형 브래킷 표기법을 통해 액세스 할 수 있으며, 이는 가변 속성 이름 또는 특수 문자가 포함 된 속성 이름에 대한 유연성을 더 많이 제공합니다.

객체의 속성으로 사용되는 함수를 메소드라고하며 포인트 표기법 및 제곱 브래킷 표기법을 사용하여 호출 할 수 있습니다. 할당 문을 통해 속성 및 메소드를 기존 객체에 추가 할 수 있으며, 중첩 객체의 속성에 도트 및/또는 브래킷 참조를 함께 연결하여 액세스 할 수 있습니다.
  • JavaScript 객체는 언어의 초석입니다. 많은 내장 데이터 유형 (예 : 오류, 정규식 및 함수)은 JavaScript의 객체로 표시됩니다. 성공적인 JavaScript 개발자가 되려면 객체의 작동 방식에 대한 확고한 이해가 있어야합니다. 이 기사는 JavaScript 객체 생성 및 조작의 기본 사항을 알려줍니다. 객체는 프리미티브 및 기타 객체로 구축 된 복합 데이터 유형입니다. 물체의 빌딩 블록을 종종 필드 또는
  • attribute 라고합니다. 속성은 객체의 특정 측면을 설명하는 데 사용됩니다. 예를 들어, 속성은 목록의 길이, 개 색상 또는 사람의 생년월일을 설명 할 수 있습니다.
  • 객체를 만듭니다
  • JavaScript에서 객체를 만드는 것은 쉽습니다. 이 언어는 객체를 신속하게 생성하기 위해
  • 객체 문자 그럴 표기법
라는 구문을 제공합니다. 객체 텍스트는 버팀대로 표시됩니다. 다음 예제는 속성이없는 빈 객체를 만듭니다.

버팀대에서 속성과 그 값은 키/값 쌍의 목록으로 지정됩니다. 키는 문자열 또는 식별자 일 수 있지만 값은 유효한 표현식 일 수 있습니다. 키/값 쌍의 목록은 쉼표로 구분되며 각 키와 값은 결장으로 분리됩니다. 다음 예제는 문자 표기법을 사용하여 세 가지 속성을 가진 객체를 만듭니다. 첫 번째 속성 Foo는 숫자 1을 저장합니다. 두 번째 속성 막대는 문자열을 사용하여 지정되며 문자열 값도 저장합니다. 세 번째 속성은 빈 개체를 저장합니다. 이전 예제에서 공간 사용에주의를 기울이십시오. 각 속성은 별도의 줄에 쓰여지고 들여 쓰기됩니다. 전체 객체는 한 줄로 작성할 수 있지만이 형식으로 작성된 코드는 읽기 쉽습니다. 이것은 속성이 많거나 중첩 된 객체를 가진 객체의 경우 특히 그렇습니다. 액세스 속성

javaScript는 객체 속성에 액세스하는 두 가지 표기법을 제공합니다. 첫 번째이자 가장 일반적인 것은

포인트 표기법 라고합니다. 도트 표기법에서, 호스트 객체의 이름을 제공하고, 기간 (또는 dot), 속성 이름을 제공하여 속성에 액세스됩니다. 다음 예제는 점 표기법을 사용하여 속성을 읽고 쓰는 방법을 보여줍니다. 객체의 초기 저장된 값이 1이면이 명령문을 실행 한 후 그 값이 2가됩니다. 객체 .foo가 아직 값이 없으면 정의되지 않습니다. 객체 속성에 액세스하기위한 또 다른 구문을 제곱 브래킷 표기법 라고합니다. 정사각형 브래킷 표기법에서는 객체 이름과 사각형 브래킷 세트가 이어집니다. 사각형 브래킷에서 속성 이름은 문자열로 지정됩니다. 이전 포인트 표기법의 예는 정사각형 브래킷 표기법을 사용하기 위해 아래에 다시 작성되었습니다. 코드는 다르게 보일 수 있지만 이전 예제와 기능적으로 동일합니다.

<code class="language-javascript">var object = {};</code>
제곱 브래킷 표기법은 변수가 속성 이름의 전부 또는 일부를 지정할 수 있기 때문에 DOT 표기법보다 표현력이 뛰어납니다. JavaScript 인터프리터는 정사각형 브래킷의 표현식을 자동으로 정사각형으로 변환 한 다음 해당 속성을 검색하기 때문에 가능합니다. 다음 예제는 제곱 브래킷 표기법을 사용하여 속성 이름을 동적으로 작성하는 방법을 보여줍니다. 이 예에서 속성 이름 Foo는 변수 f의 내용을 문자열 "oo"와 연결하여 생성됩니다.

정사각형 브래킷 표기법은 또한 속성 이름이 DOT 표기법에 금지 된 문자를 포함 할 수있게합니다. 예를 들어, 다음 진술은 정사각형 브래킷 표기법에서 완전히 합법적입니다. 그러나 DOT 표기법에서 동일한 속성 이름을 작성하려고하면 구문 오류가 발생합니다.

액세스 중첩 특성 중첩 된 물체의 특성은 점 및/또는 사각형 브래킷 참조를 함께 연결하여 액세스 할 수 있습니다. 예를 들어, 다음 객체에는 BAZ라는 중첩 된 객체가 포함되어 있으며, 여기에는 FOO라는 다른 객체가 포함되어 있으며, 여기에는 값 5를 저장하는 Bar라는 속성이 있습니다.
<code class="language-javascript">var object = {
  foo: 1,
  "bar": "some string",
  baz: {
  }
};</code>

다음 표현식은 중첩 된 속성 막대에 액세스합니다. 첫 번째 표현식은 도트 표기법을 사용하는 반면, 두 번째 표현식은 제곱 브래킷 표기법을 사용합니다. 세 번째 표현식은 두 가지 표기법을 결합하여 동일한 결과를 달성합니다.

<code class="language-javascript">object.foo = object.foo + 1;</code>
이전 예제에 표시된 표현식과 같은 표현은 잘못 사용하면 성능 저하를 유발할 수 있습니다. 각 점 또는 사각형 브래킷 표현식을 평가하는 데 시간이 걸립니다. 동일한 속성을 여러 번 사용하는 경우 속성에 한 번만 액세스 한 다음 모든 목적으로 사용하기 위해 로컬 변수에 값을 저장하는 것이 가장 좋습니다. 다음 예제는 루프에서 막대를 여러 번 사용합니다. 그러나 동일한 값을 반복해서 계산하는 시간을 낭비하는 대신 로컬 변수에 막대를 저장하십시오.

<code class="language-javascript">object["foo"] = object["foo"] + 1;</code>
메소드로 기능

함수가 객체 속성으로 사용되면 메소드 라고합니다. 속성과 마찬가지로 메소드는 객체 문자 그럴 표기법으로 지정할 수도 있습니다. 다음 예는이를 달성하는 방법을 보여줍니다.

메소드는 도트 표기법과 제곱 브래킷 표기법을 사용하여 호출 할 수 있습니다. 다음 예제는이 두 가지 표기법을 사용하여 이전 예제에서 sum () 메소드를 호출합니다.
<code class="language-javascript">var f = "f";

object[f + "oo"] = "bar";</code>
<code class="language-javascript">var object = {};</code>

속성과 메소드를 추가하십시오 객체 문자 그럴 표기법은 새 개체를 만드는 데 유용하지만 기존 객체에 속성이나 메소드를 추가 할 수는 없습니다. 다행히도 객체에 새 데이터를 추가하는 것은 할당 문을 작성하는 것만 큼 간단합니다. 다음 예제는 빈 객체를 만듭니다. 그런 다음 할당 문을 사용하여 FOO와 막대와 메소드 BAZ를 추가하십시오. 이 예제는 도트 표기법을 사용하지만 제곱 브래킷 표기법은 똑같이 효과적입니다.

결론

이 기사에서는 JavaScript 객체 구문의 기본 지식을 소개합니다. 이 내용은 나머지 언어의 기초를 형성하기 때문에 이러한 내용을 마스터하는 것이 중요합니다. 그들은 당신이 달리기 전에 걷는 법을 배워야한다고 말합니다. 그런 다음 JavaScript의 세계에서 먼저 객체 지향 프로그래밍을 이해하려면 개체를 이해해야합니다.
<code class="language-javascript">var object = {
  foo: 1,
  "bar": "some string",
  baz: {
  }
};</code>
JavaScript 객체 구문 (FAQ)

에 대한 자주 묻는 질문 JavaScript 객체 구문의 중간 점 표기법과 제곱 브래킷 표기법의 차이점은 무엇입니까? JavaScript에서 객체는 키 값 쌍의 컬렉션입니다. 도트 표기법 또는 제곱 브래킷 표기법을 사용하여 이러한 값에 액세스 할 수 있습니다. 도트 표현은 더 직접적이고 읽기 쉽습니다. 속성 이름을 알면 사용하십시오. 예를 들어, "이름"이라는 속성이있는 "person"이라는 객체가있는 경우 : person.name과 같이 액세스 할 수 있습니다. 반면에 정사각형 괄호는 더 유연합니다. 유효한 식별자가 아닌 변수 또는 속성 이름을 사용하여 속성에 액세스 할 수 있습니다. 예를 들어, 속성 이름에 공백이나 특수 문자가 포함되어 있거나 숫자 인 경우 다음과 같이 액세스 할 수 있습니다 : Person [ 'Property Name'].

기존 JavaScript 객체에 속성을 추가하는 방법은 무엇입니까?

도트 표기법 또는 제곱 브래킷 표기법을 사용하여 기존 JavaScript 객체에 속성을 추가 할 수 있습니다. 포인트 표기법의 경우 구문 객체를 사용하면됩니다 .Property = value. 정사각형 브래킷 표기법의 경우 구문은 객체 [ 'property'] = value입니다. 두 경우 모두 객체에 속성이 존재하지 않으면 추가됩니다.

JavaScript 객체에서 속성을 삭제하는 방법은 무엇입니까?

"삭제"연산자를 사용하여 JavaScript 객체에서 속성을 삭제할 수 있습니다. "삭제"연산자의 구문은 삭제 객체입니다. 포인트 표기법의 경우 객체를 삭제하고 제곱 브래킷 표기법에 대한 객체 [ 'property']입니다. 이렇게하면 객체에서 속성과 그 값이 제거됩니다. JavaScript 객체의 방법은 무엇입니까?

메소드는 객체 속성으로 저장된 함수입니다. 객체 데이터를 사용하는 작업을 수행하는 데 사용됩니다. 다음과 같이 함수 구문을 사용하여 객체에서 메소드를 정의 할 수 있습니다. 객체 .methodname = function () { / 코드 /}.

JavaScript 객체의 속성을 반복하는 방법은 무엇입니까?

"for ... in"루프를 사용하여 JavaScript 객체의 속성을 반복 할 수 있습니다. 이 루프는 프로토 타입 체인에서 상속 된 특성을 포함하여 객체의 열거 가능한 특성을 반복합니다. 구문은 다음과 같습니다. for (var expropert in object) { / 코드 /}.

JavaScript 객체의"이 "키워드는 무엇입니까?

JavaScript 객체의"이 "키워드는 그것이 속한 객체를 나타냅니다. 메소드 내부에서 "이"는 소유자 객체를 나타냅니다. 생성자에서 "이"는 새로 생성 된 객체를 나타냅니다.

JavaScript의 생성자는 무엇입니까?

JavaScript의 생성자는 동일한 유형의 객체를 만드는 데 사용되는 특수 함수입니다. 그것들은 일반적인 기능과 구별하기 위해 대문자로 명명되었습니다. "새로운"키워드는 생성자를 호출하고 새 개체를 만드는 데 사용됩니다.

JavaScript의 객체 프로토 타입은 무엇입니까?

각 JavaScript 객체에는 프로토 타입이 있습니다. 프로토 타입은 또한 객체이며 모든 객체는 프로토 타입에서 속성과 방법을 상속합니다. 이것은 객체 유형의 인스턴스에 새로운 속성이나 메소드를 추가 할 수 있기 때문에 JavaScript의 강력한 기능입니다.

JavaScript 객체에 속성이 있는지 확인하는 방법은 무엇입니까?

"in"연산자 또는 "hasownproperty"메소드를 사용하여 JavaScript 객체에 속성이 있는지 확인할 수 있습니다. "in"운영자는 속성이 객체 또는 프로토 타입 체인에 존재하는 경우 true를 반환합니다. "hasownproperty"메소드는 객체 자체에 속성이 존재하는 경우에만 true를 반환합니다.

JavaScript에서 객체 파괴는 무엇입니까?

JavaScript의 객체 파괴는 객체에서 속성을 추출하여 변수에 바인딩 할 수있는 함수입니다. 이를 통해 코드를보다 간결하고 읽기 쉽게 만들 수 있습니다. 구문은 다음과 같습니다. var {property1, property2} = 객체.

위 내용은 JavaScript의 객체 구문의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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