웹 프론트엔드 JS 튜토리얼 js에서 심볼은 어떤 용도로 사용되나요?

js에서 심볼은 어떤 용도로 사용되나요?

May 07, 2024 pm 06:27 PM
민감한 데이터 반복 가능한 객체

Symbol은 JavaScript에서 불변의 고유 식별자로 사용됩니다. 주요 용도로는 객체의 비공개 속성, 클래스 멤버 식별, 키 매핑, 생성기 함수 반환 값 및 기타 내장 객체 속성이 있습니다.

js에서 심볼은 어떤 용도로 사용되나요?

JavaScript에서 기호 사용

Symbol은 기본적으로 변경할 수 없는 고유 식별자인 JavaScript의 고유 값 유형입니다. 주요 용도는 다음과 같습니다.

1 개체의 개인 속성으로

Symbol은 표준 for...in에 나타나지 않으므로 개체의 개인 속성으로 사용할 수 있습니다. > 루프 또는 Object.keys() 메서드. 따라서 민감한 데이터를 저장하거나 내부 상태 관리에 이상적입니다. for...in 循环或 Object.keys() 方法中。这使得它非常适合存储敏感数据或用于内部状态管理。

示例代码:

const user = {
  [Symbol("secretData")]: "Confidential information"
};
로그인 후 복사

2. 作为类成员的标识符

Symbol 可以用于标识类中的成员,例如方法或属性。这可以防止意外覆盖或冲突。

示例代码:

class Person {
  static [Symbol("getName")]() {
    return "John Doe";
  }
}
로그인 후 복사

3. 作为映射键

Symbol 可以用作映射(Map 或 WeakMap)的键。这对于创建更具可读性和可维护性的代码非常有用。

示例代码:

const myMap = new Map();
myMap.set(Symbol("key1"), "value1");
로그인 후 복사

4. 作为生成器函数的返回值

Symbol 可以用作生成器函数的返回值,以表示一个可迭代对象的唯一标识。

示例代码:

function* myGenerator() {
  yield 1;
  yield 2;
}

const mySymbol = Symbol.iterator;
const myIterator = myGenerator()[mySymbol]();
로그인 후 복사

5. 作为其他内置对象的属性

Symbol 也被用作其他内置对象的属性,例如:

  • Symbol.iterator: 表示对象的默认迭代器
  • Symbol.hasInstance: 用于检查对象是否是指定类的实例
  • Symbol.species
샘플 코드: 🎜🎜rrreee🎜🎜2. 클래스 멤버의 식별자로 🎜🎜🎜기호는 메서드나 속성과 같은 클래스의 멤버를 식별하는 데 사용할 수 있습니다. 이렇게 하면 실수로 덮어쓰거나 충돌하는 것을 방지할 수 있습니다. 🎜🎜🎜샘플 코드: 🎜🎜rrreee🎜🎜3. 맵 키로 🎜🎜🎜심볼을 맵(Map 또는 WeakMap)의 키로 사용할 수 있습니다. 이는 더 읽기 쉽고 유지 관리하기 쉬운 코드를 만드는 데 유용합니다. 🎜🎜🎜샘플 코드: 🎜🎜rrreee🎜🎜4. 생성기 함수의 반환 값으로 🎜🎜🎜Symbol을 생성기 함수의 반환 값으로 사용하여 반복 가능한 객체의 고유 식별자를 나타낼 수 있습니다. 🎜🎜🎜샘플 코드: 🎜🎜rrreee🎜🎜5. 다른 내장 객체의 속성으로 🎜🎜🎜Symbol은 다음과 같은 다른 내장 객체의 속성으로도 사용됩니다: 🎜
  • Symbol.iterator code>: 객체의 기본 반복자를 나타냅니다🎜
  • Symbol.hasInstance: 객체가 지정된 클래스의 인스턴스인지 확인하는 데 사용됩니다🎜
  • Symbol.species: 객체 생성자 반환🎜🎜

위 내용은 js에서 심볼은 어떤 용도로 사용되나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
1 몇 달 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
1 몇 달 전 By 尊渡假赌尊渡假赌尊渡假赌
Will R.E.P.O. 크로스 플레이가 있습니까?
1 몇 달 전 By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

Douyin의 IP 주소는 어떻게 표시되나요? IP 주소는 실시간 위치를 표시합니까? Douyin의 IP 주소는 어떻게 표시되나요? IP 주소는 실시간 위치를 표시합니까? May 02, 2024 pm 01:34 PM

사용자는 Douyin에서 다양하고 흥미로운 짧은 동영상을 볼 수 있을 뿐만 아니라 자신의 작품을 게시하고 전국은 물론 전 세계 네티즌과 교류할 수도 있습니다. 그 과정에서 Douyin의 IP 주소 표시 기능이 널리 주목을 받았습니다. 1. Douyin의 IP 주소는 어떻게 표시되나요? Douyin의 IP 주소 표시 기능은 주로 지리적 위치 서비스를 통해 구현됩니다. 사용자가 Douyin에 동영상을 게시하거나 시청하면 Douyin은 자동으로 사용자의 지리적 위치 정보를 얻습니다. 이 프로세스는 주로 다음 단계로 나뉩니다. 먼저 사용자가 Douyin 애플리케이션을 활성화하고 애플리케이션이 지리적 위치 정보에 액세스하도록 허용합니다. 두 번째로 Douyin은 위치 서비스를 사용하여 사용자의 지리적 위치 정보를 얻습니다. 위치 정보 지리적 위치 정보는 그들이 게시하거나 시청한 비디오 데이터와 연관되어 있으며,

ICP 코인의 가치와 용도는 무엇인가요? ICP 코인의 가치와 용도는 무엇인가요? May 09, 2024 am 10:47 AM

인터넷 컴퓨터(IC) 프로토콜의 기본 토큰인 ICP 코인은 가치 저장, 네트워크 거버넌스, 데이터 저장 및 컴퓨팅, 노드 운영 인센티브화를 포함하여 고유한 가치 및 용도 세트를 제공합니다. ICP 코인은 IC 프로토콜의 채택으로 신뢰성과 가치가 높아지는 유망한 암호화폐로 간주됩니다. 또한 ICP 코인은 IC 프로토콜의 거버넌스에서 중요한 역할을 합니다. 코인 보유자는 투표 및 제안서 제출에 참여하여 프로토콜 개발에 영향을 미칠 수 있습니다.

Kingston U 디스크 대량 생산 도구 - 효율적이고 편리한 대량 데이터 복사 솔루션 Kingston U 디스크 대량 생산 도구 - 효율적이고 편리한 대량 데이터 복사 솔루션 May 01, 2024 pm 06:40 PM

소개: 대량의 데이터를 복사해야 하는 기업과 개인에게 효율적이고 편리한 U 디스크 대량 생산 도구는 필수 불가결합니다. Kingston이 출시한 U 디스크 대량 생산 도구는 뛰어난 성능과 간단하고 사용하기 쉬운 조작으로 인해 대용량 데이터 복사를 위한 첫 번째 선택이 되었습니다. 이 기사에서는 독자들이 이 효율적이고 편리한 대량 데이터 복사 솔루션을 더 잘 이해하고 사용할 수 있도록 Kingston의 USB 플래시 디스크 대량 생산 도구의 특성, 사용법 및 실제 응용 사례를 자세히 소개합니다. 도구 자료: 시스템 버전: Windows1020H2 브랜드 모델: Kingston DataTraveler100G3 U 디스크 소프트웨어 버전: Kingston U 디스크 대량 생산 도구 v1.2.0 1. Kingston U 디스크 대량 생산 도구의 기능 1. 여러 U 디스크 모델 지원: Kingston U 디스크 볼륨

오라클 데이터베이스와 mysql의 차이점 오라클 데이터베이스와 mysql의 차이점 May 10, 2024 am 01:54 AM

Oracle 데이터베이스와 MySQL은 모두 관계형 모델을 기반으로 하는 데이터베이스이지만 호환성, 확장성, 데이터 유형 및 보안 측면에서 Oracle이 우수하고, MySQL은 속도와 유연성에 중점을 두고 중소 규모 데이터 세트에 더 적합합니다. ① Oracle은 광범위한 데이터 유형을 제공하고, ② 고급 보안 기능을 제공하고, ③ 엔터프라이즈급 애플리케이션에 적합하고, ① MySQL은 NoSQL 데이터 유형을 지원하고, ② 보안 조치가 적고, ③ 중소 규모 애플리케이션에 적합합니다.

Python에서 배열에 요소를 추가하는 방법 Python에서 배열에 요소를 추가하는 방법 May 05, 2024 pm 08:21 PM

Python에는 목록에 요소를 추가하는 네 가지 방법이 있습니다. 끝에 추가하려면 add() 메서드를 사용하고, 다른 반복 가능한 개체의 요소를 추가하려면 insert() 메서드를 사용하세요. 지정된 위치, 인덱싱 사용 값을 할당합니다(그러나 인덱스가 범위를 벗어나면 예외가 발생합니다).

js에서 문자열을 배열로 변환하는 방법 js에서 문자열을 배열로 변환하는 방법 May 06, 2024 am 11:24 AM

JavaScript에서는 스프레드 연산자를 사용하여 문자열을 배열로 변환하여 Array.from() 메서드를 사용하여 정규 표현식으로 구분 기호로 분할하고 match() 메서드를 사용하여 직접 변환할 수 있습니다. 알파벳 단어를 일치시킵니다.

휴대 전화에서 XML 파일을 PDF로 변환하는 방법은 무엇입니까? 휴대 전화에서 XML 파일을 PDF로 변환하는 방법은 무엇입니까? Apr 02, 2025 pm 10:12 PM

단일 애플리케이션으로 휴대 전화에서 직접 XML에서 PDF 변환을 완료하는 것은 불가능합니다. 두 단계를 통해 달성 할 수있는 클라우드 서비스를 사용해야합니다. 1. 클라우드에서 XML을 PDF로 변환하십시오. 2. 휴대 전화에서 변환 된 PDF 파일에 액세스하거나 다운로드하십시오.

vue에서 get과 post의 차이점 vue에서 get과 post의 차이점 May 09, 2024 pm 03:39 PM

Vue.js에서 GET과 POST의 주요 차이점은 GET은 데이터를 검색하는 데 사용되고 POST는 데이터를 생성하거나 업데이트하는 데 사용된다는 것입니다. GET 요청의 데이터는 쿼리 문자열에 포함되고, POST 요청의 데이터는 요청 본문에 포함됩니다. GET 요청은 데이터가 URL에 표시되므로 덜 안전하지만 POST 요청은 더 안전합니다.

See all articles