웹 프론트엔드 JS 튜토리얼 JavaScript로 상수를 생성하는 방법에 대한 기본 지식(그래픽 튜토리얼)

JavaScript로 상수를 생성하는 방법에 대한 기본 지식(그래픽 튜토리얼)

May 19, 2018 am 09:09 AM
javascrip 기본 지식 끊임없는

이 글은 JS에 대해 더 자세히 알아볼 수 있도록 JavaScript에서 상수 생성과 관련된 지식 포인트를 주로 소개합니다.

이 글은 JS의 상수 정의와 사용법, 함수 작성 시 흔히 발생하는 오류에 대한 심층 분석을 제공합니다. 모든 사람에게 도움이 되기를 바랍니다.

소위 상수는 읽기만 가능하고 읽기만 가능한 변수입니다. 편집(삭제, 수정)이 불가능합니다.

js에는 원래 상수(즉, 사용자 정의, 원본)가 없지만 일부 원격 방식으로 생성될 수 있습니다.

1: es6의 const 선언 키워드.

위에서 두 개의 변수를 선언했는데, 수정 작업을 수행하면 오류가 보고됩니다. 어느 정도 const는 변수(기본 유형)를 생성할 수 있습니다. 그러나 참조 유형은 찾기가 어렵습니다.

선언된 변수가 참조형일 경우 객체이며 객체에 대한 연산(삭제, 수정, 추가)이 가능합니다.

2: 객체 메소드(defineProperty, seal, Freeze) 구현

1) Object.defineProperty: 이 메소드는 객체에 새로운 속성을 직접 정의하거나 객체의 기존 속성을 수정하고 객체를 반환합니다. ​​

위 방법을 사용한 후에는 이후의 수정 기능이 무효화되지만, 수정 기능은 정상적으로 실행될 수 없으나 삭제 기능은 정상적으로 실행될 수 있습니다.

a 속성을 삭제한 후 계속 추가하면 a 속성을 다시 변경할 수 있게 됩니다. 위의 내용은 a 속성의 쓰기 가능 속성만 변경하며, 설정할 수 있는 구성 가능한 속성도 있습니다. writable 속성은 해당 속성만 변경하므로 직접 변경할 수 없으며, 작은 방법(먼저 삭제한 후 추가)으로 수행할 수 있습니다.

이 시점에서 속성 a가 확정되더라도 수정하거나 삭제할 수 없습니다.

그런데 새로운 폭풍이 등장했습니다. . . a는 결정되었지만 변수 TEST_D에 대해서는 아직 끝나지 않았습니다. . .

a 속성은 변경할 수 없지만 b, s, u와 같은 다른 속성의 작동에는 영향을 미치지 않습니다. 물론 이러한 속성의 경우 다른 속성의 설명자도 같은 방식으로 변경할 수 있습니다. 위와 같지만 여전히 TEST_D에 대한 확장을 확인할 수 없습니다.

2) Object.preventExtensions: 이 메서드는 객체를 확장 불가능하게 만듭니다. 즉, 새 속성을 추가할 수 없습니다. 세부 정보 보기

이 방법을 사용하면 개체를 확장 불가능하도록 설정할 수 있습니다. 즉, 새 속성을 추가할 수 없으므로 이 변수를 수정할 수 없습니다.

3) Object.seal: 객체를 봉인하고 봉인된 객체를 반환합니다. 새 객체는 확장 불가능하게 됩니다. 즉, 새 속성을 추가할 수 없지만 원래 쓰기 가능 상태의 속성은 수정할 수 있습니다

위의 방법 두 가지 방법을 재활용하여 상수를 생성하는 것이 가능하지만 더 복잡하고 객체가 상대적으로 클 경우 코드의 양이 상대적으로 많아집니다. Object.seal()은 이 프로세스를 단순화할 수 있습니다. 이 방법을 사용하면 개체를 확장할 수 없게 되고 속성을 삭제할 수 없습니다. 이를 바탕으로 객체의 모든 속성에 대한 설명자를 쓰기 가능에서 거짓으로 변경하면 우리가 원하는 변수, 즉 상수를 얻을 수 있습니다.

4) Object.freeze: 이 방법은 객체를 고정할 수 있습니다. 동결이란 이 객체에 새 속성을 추가할 수 없고, 기존 속성의 값을 수정할 수 없으며, 기존 속성을 삭제할 수 없으며, 객체의 기존 속성을 의미합니다. 속성의 열거 가능성, 구성 가능성 및 쓰기 가능성은 수정할 수 없습니다. 즉, 이 객체는 항상 불변입니다. 이 메서드는 고정된 개체를 반환합니다.

Object.freeze 메서드는 seal을 기반으로 하며 모든 속성에 쓸 수 있는 설명자를 false로 변경합니다.

그러나 변수의 속성 값이 객체일 때 다음과 같은 상황에서는

사용자 속성의 경우 해당 값이 여전히 변경될 수 있으므로 이때는 고정되어야 합니다.

/**
 * 
 * 
 * @param {any} obj 
 */
function freezeObj(obj) {
 Object.freeze(obj);
 Object.keys(obj).forEach(key => {
 if (typeof obj[key] === 'object') {
  freezeObj(obj[key])
 }
 })
}
로그인 후 복사

즉, 개체가 여러 개인 경우 고정 메서드를 주기적으로 호출해야 합니다.

3 단, 수정된 인터페이스는 제공되지 않습니다.

위 내용은 제가 여러분을 위해 정리한 내용입니다. 앞으로 도움이 되길 바랍니다.

관련글 :

Vue.

js

리스너 속성 계산 및 활용에 대한 자세한 설명

js

3가지 호출 방식의 장단점 요약동적 소개

js

4가지 요약 방법

위 내용은 JavaScript로 상수를 생성하는 방법에 대한 기본 지식(그래픽 튜토리얼)의 상세 내용입니다. 자세한 내용은 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를 무료로 생성하십시오.

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

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

SublimeText3 중국어 버전

SublimeText3 중국어 버전

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

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

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

C언어에서 상수란 무엇인가요? 예를 들어주실 수 있나요? C언어에서 상수란 무엇인가요? 예를 들어주실 수 있나요? Aug 28, 2023 pm 10:45 PM

상수는 변수라고도 하며 일단 정의되면 프로그램이 실행되는 동안 그 값이 변경되지 않습니다. 따라서 변수를 고정된 값을 참조하는 상수로 선언할 수 있습니다. 텍스트라고도 합니다. 상수는 Const 키워드를 사용하여 정의해야 합니다. 구문 C 프로그래밍 언어에서 사용되는 상수의 구문은 다음과 같습니다. - consttypeVariableName; (또는) consttype*VariableName; 다양한 유형의 상수 C 프로그래밍 언어에서 사용되는 다양한 유형의 상수는 다음과 같습니다. 정수 상수 - 예: 1,0 ,34, 4567 부동 소수점 상수 - 예: 0.0, 156.89, 23.456 8진수 및 16진수 상수 - 예: 16진수: 0x2a, 0xaa.. 8진수

Python에서 상수를 만드는 방법은 무엇입니까? Python에서 상수를 만드는 방법은 무엇입니까? Aug 29, 2023 pm 05:17 PM

상수와 변수는 프로그래밍에서 데이터 값을 저장하는 데 사용됩니다. 변수는 일반적으로 시간이 지남에 따라 변경될 수 있는 값을 나타냅니다. 상수는 프로그램 실행 중에 값을 변경할 수 없는 변수 유형입니다. Python에서 사용할 수 있는 내장 상수는 6개뿐입니다. 이는 False, True, None, NotImplemented, Ellipsis(...) 및 __debug__입니다. 이러한 상수 외에도 Python에는 상수 값을 저장하는 내장 데이터 유형이 없습니다. 예 상수의 예는 아래에 설명되어 있습니다. False=100 출력 SyntaxError:cannotsigntoFalseFalse는 부울 값을 저장하는 데 사용되는 Python의 내장 상수입니다.

Java에서는 final 키워드만 사용하여 상수를 정의할 수 있나요? Java에서는 final 키워드만 사용하여 상수를 정의할 수 있나요? Sep 20, 2023 pm 04:17 PM

상수 변수는 값이 고정되어 있고 프로그램에 단 하나의 복사본만 존재하는 변수입니다. 상수 변수를 선언하고 값을 할당하면 프로그램 전체에서 해당 값을 다시 변경할 수 없습니다. 다른 언어와 달리 Java는 상수를 직접 지원하지 않습니다. 그러나 변수를 static 및 final로 선언하여 상수를 생성할 수 있습니다. 정적 - 정적 변수를 선언하면 컴파일 타임에 메모리에 로드됩니다. 즉, 하나의 복사본만 사용할 수 있습니다. 최종 - 최종 변수를 선언한 후에는 해당 값을 수정할 수 없습니다. 따라서 인스턴스 변수를 static 및 final로 선언하여 Java에서 상수를 생성할 수 있습니다. 예시 데모 classData{&am

PHP 오류: 정의되지 않은 상수를 호출할 때 문제를 해결하는 방법은 무엇입니까? PHP 오류: 정의되지 않은 상수를 호출할 때 문제를 해결하는 방법은 무엇입니까? Aug 26, 2023 pm 03:39 PM

PHP는 웹 개발에 널리 사용되는 서버측 스크립팅 언어로, 유연성과 사용 용이성으로 인해 많은 개발자가 가장 먼저 선택합니다. 그러나 PHP를 사용할 때 가끔 오류 보고서가 표시되는 경우가 있습니다. 이 문서에서는 "정의되지 않은 상수 호출" 오류와 이 문제를 해결하는 방법에 중점을 둘 것입니다. 1. 문제 설명 코드에서 정의되지 않은 상수를 사용하면 PHP는 정의되지 않은 상수를 호출하라는 치명적인 오류를 발생시킵니다. 일반적인 예는 다음과 같습니다. echoMY_

처음부터 배우기: Go 언어의 기본을 마스터하세요 처음부터 배우기: Go 언어의 기본을 마스터하세요 Feb 01, 2024 am 08:45 AM

처음부터 시작하기: Go 언어 학습의 기본 소개 Golang이라고도 알려진 Go 언어는 Google에서 개발한 오픈 소스 프로그래밍 언어입니다. 2009년에 출시되었으며 특히 웹 개발, 분산 시스템, 클라우드 컴퓨팅과 같은 분야에서 빠르게 인기 있는 언어가 되었습니다. Go 언어는 단순성, 효율성 및 강력한 동시성으로 유명합니다. 기본 구문 1. 변수와 상수 Go 언어에서는 변수와 상수를 입력합니다. 변수는 데이터를 저장할 수 있지만 상수는 변경할 수 없습니다. 변수 선언 형식은 다음과 같습니다. v

PHP 오류: 정의되지 않은 상수를 속성 이름으로 사용하는 경우 어떻게 해야 합니까? PHP 오류: 정의되지 않은 상수를 속성 이름으로 사용하는 경우 어떻게 해야 합니까? Aug 17, 2023 pm 02:13 PM

PHP 오류: 정의되지 않은 상수를 속성 이름으로 사용하는 경우 어떻게 해야 합니까? PHP 개발에서는 클래스와 객체를 사용하여 코드를 구성하고 관리하는 경우가 많습니다. 클래스를 정의하는 과정에서 클래스의 속성(즉, 멤버 변수)은 데이터를 저장하는 데 중요한 역할을 합니다. 그런데 속성을 사용할 때 정의되지 않은 상수를 속성명으로 사용하면 오류가 발생하는 경우가 있습니다. 이 문서에서는 이 오류의 원인을 설명하고 몇 가지 해결 방법을 제공합니다. 먼저 이 문제를 설명하는 간단한 예를 살펴보겠습니다. "Per"라는 파일이 있다고 가정합니다.

MySQL을 배우기 위해 꼭 읽어야 할 책! SQL문에 대한 기본지식을 자세하게 설명 MySQL을 배우기 위해 꼭 읽어야 할 책! SQL문에 대한 기본지식을 자세하게 설명 Jun 15, 2023 pm 09:00 PM

MySQL은 웹 애플리케이션 개발 및 데이터 저장에 널리 사용되는 오픈 소스 관계형 데이터베이스 관리 시스템입니다. MySQL의 SQL 언어를 배우는 것은 데이터 관리자와 개발자에게 매우 필요합니다. SQL 언어는 MySQL의 핵심 부분이므로 MySQL을 배우기 전에 SQL 언어에 대한 완전한 이해가 필요합니다. 이 기사에서는 SQL 문에 대한 기본 지식을 자세히 설명하여 SQL 문을 단계별로 이해할 수 있도록 하는 것을 목표로 합니다. 단계. SQL은 Structured Query Language의 약자로 관계형 데이터에 사용됩니다.

기본 데이터형 상수 정의 및 초기화 방법 학습 가이드 기본 데이터형 상수 정의 및 초기화 방법 학습 가이드 Jan 05, 2024 pm 02:08 PM

기본 데이터형 상수의 정의와 초기화 방법을 익히기 위해서는 구체적인 코드 예제가 필요합니다. 프로그래밍에서는 정수형, 부동소수점형, 문자형 등 다양한 기본 데이터형이 사용되는 경우가 많습니다. 이러한 데이터 유형을 사용할 때는 정의와 사용법뿐만 아니라 상수를 정의하고 초기화하는 방법도 이해해야 합니다. 이 기사에서는 기본 데이터 유형 상수의 정의 및 초기화 방법을 소개하고 구체적인 코드 예제를 제공합니다. 정수 상수 정의 및 초기화 방법 정수 상수에는 int, long, short, byt가 있습니다.

See all articles