> 웹 프론트엔드 > 프런트엔드 Q&A > JavaScript를 캡슐화해야 하는 이유

JavaScript를 캡슐화해야 하는 이유

WBOY
풀어 주다: 2022-04-13 19:15:28
원래의
2911명이 탐색했습니다.

캡슐화 이유: 1. 캡슐화는 코드 중복을 줄이고, 코드를 복잡하지 않게 만들고, 불필요한 코드를 줄일 수 있습니다. 2. 개체는 다른 개체와 상호 작용하는 데 필요한 인터페이스만 제공하고 내부 데이터와 상호 작용할 수 있습니다. 다양한 수준의 보호 제공 프로그램의 관련되지 않은 부분이 실수로 변경되거나 개체의 개인 부분을 잘못 사용하는 것을 방지하면 보안이 향상될 수 있습니다.

JavaScript를 캡슐화해야 하는 이유

이 튜토리얼의 운영 환경: Windows 10 시스템, JavaScript 버전 1.8.5, Dell G3 컴퓨터.

JavaScript가 캡슐화되어야 하는 이유는 무엇인가요?

캡슐화는 객체지향의 세 가지 기본 특성 중 하나입니다. 컴퓨터 분야에서 객체는 속성과 동작(메서드)을 모두 갖습니다.

우리의 일상적인 개발 과정에서 동일한 처리 로직을 사용하는 코드는 일반적으로 코드 중복을 줄이고 코드를 더욱 우아하고 아름답게 보이도록 기능을 캡슐화합니다. 그런 다음

여러 엔터티 개체가 동일한 속성을 가질 때 및 동작을 생성할 때. (메서드) 불필요한 코드를 줄이기 위해 동일한 속성과 동작을 추상화하는 것이 당연합니다.

캡슐화의 중요한 기능: 데이터 숨기기.

객체는 다른 객체와 상호 작용하는 데 필요한 인터페이스만 제공하며 자체 속성 및 구현 세부 정보 중 일부를 외부에서 숨깁니다. 이러한 방식으로 객체는 프로그램의 관련 없는 부분을 방지하기 위해 내부 데이터에 대해 다양한 수준의 보호를 제공합니다. 객체의 비공개 부분을 변경하거나 잘못 사용하는 것입니다. 이는 정상적인 상호작용을 보장하면서 보안을 보장하며, 객체가 구현하는 메소드에 신경쓰지 않고 이 객체를 사용할 수 있습니다.

함수 - 가장 간단한 캡슐화

함수는 모든 언어의 핵심 개념입니다. 함수를 통해 원하는 만큼의 명령문을 캡슐화할 수 있으며 언제 어디서나 호출하고 실행할 수 있습니다.

캡슐화 방법: 함수의 중괄호 안에 분산된 명령문을 작성하여 함수 본문이 된 다음 호출할 수 있습니다.

캡슐화되지 않은 코드:

var body = document.getElementsByTagName("body")[0];
        var h1 = document.createElement("h1");
        body.style.backgroundColor = "green";
        h1.innerText = "绿了";
        body.appendChild(h1);
로그인 후 복사

단점:

  • 같은 이름의 변수로 덮어쓰기 쉬움 - 전역 범위에 선언된 변수는 같은 이름의 변수로 쉽게 덮어쓰기 때문입니다

  • 즉시 실행 - 파서가 읽고 여기로 와서 즉시 실행

캡슐화 코드:

function makeGreen() {
            var body = document.getElementsByTagName("body")[0];
            var h1 = document.createElement("h1");
            body.style.backgroundColor = "green";
            h1.innerText = "绿了";
            body.appendChild(h1);
        }
로그인 후 복사

장점:

  • 전역 변수 방지 - 함수 범위가 존재하므로(함수 범위의 초점은 나중에 테스트)

  • 요청 시 실행 - 파서가 여기를 읽고 함수가 실행되지 않으며 필요할 때만 이 함수를 호출합니다.

  • 코드 재사용성 향상

[관련 권장 사항: javascript 비디오 튜토리얼 웹 프론트엔드

위 내용은 JavaScript를 캡슐화해야 하는 이유의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿