JavaScript는 네트워크에 속하는 스크립팅 언어입니다!
JavaScript는 수백만 개의 웹 페이지에서 설계를 개선하고 양식을 검증하고 브라우저를 감지하고 쿠키 생성 등을 사용하기 위해 사용됩니다.
JavaScript는 인터넷에서 가장 인기있는 스크립팅 언어입니다.
JavaScript는 사용하기 쉽습니다! 당신은 그것을 좋아할 것입니다!
JavaScript는 유연한 구문을 가진 해석 된 스크립팅 언어로 다른 사람들이 여러 가지 방식으로 다른 기능을 작성할 수 있습니다. 자바 스크립트 코드를 구성하여 다른 사람들이 당신이 단순하지 않다는 것을 한눈에 볼 수 있도록하는 방법은 무엇입니까? 코드를 읽은 후 한숨을 쉬는 사람을 기대하고 있습니까? "이런 식으로 쓸 수 있다는 것이 밝혀 졌습니까?"
익명 기능을 작성하는 방법
JS의 익명 함수는 선언되지 않은 함수 이름을 가진 자체 실행 함수이며 형식은 다음과 같습니다.
(기능(){})();사실, 우리는 종종 ";" 프로젝트 앞 :
;기능(){}();JS의 구문은 세미콜론을 생략 할 수 있지만이 메커니즘은 예기치 않은 오류로 이어질 수 있습니다. 코드를 시작한 후 파일로 병합 및 압축하여 구문 오류를 피하기 위해 ";" 알 수없는 오류를 피할 수 있습니다.
그러나 때때로 우리는 다른 사람들의 라이브러리 나 플러그인이 다음과 같은 익명 기능을 작성한다는 것을 알 수 있습니다.
+function () {} ();"+"는 여기서 운영자이며 연산자는 우선 순위가 매우 높기 때문에 브래킷을 사용하여 오른쪽의 기능 선언의 일부 (실제로 기능 실행 방법)가 직접 실행됩니다. 실제로, 그것은 앞쪽의 "+"표지판 일뿐 만 아니라 "-", "!", "~"및 "++"와 같은 연산자를 사용할 수 있습니다. 여기서 우리는 확장에 대한 소개 일뿐입니다. 사용되는 특정 작문 방법은 팀의 통합 표준에 따라 다릅니다.
Math.ceil () 및 수학 반올림을 포기하십시오
어쩌면 나는 다른 코드 에서이 두 가지 기호 ~~와 | 0을 보았을 것입니다.
>> var a1 = 1.23 >> ~~ a11 >> var a2 = 2.345 >> a2 | 02 >> var a3 = -3.45 >> ~~ a3-3 >> var a4 = -4.5 >> a4 | 0-4
이 글쓰기 방법은 독창적이지 않지만이 대안 작문 방법을 분석하고 설명하도록 인용됩니다. 간단한 설명은 ~가 소수점 후 모든 비트를 폐기하여 부동 소수점 번호를 정수로 변환 할 수있는 약간의 역 연산자라는 것입니다. 양의 정수는 서명되지 않은 16 진 값으로 변환 될 수 있습니다. 그런 다음 (~~) 다시 음성과 음성으로 다시 긍정적 인 정수를 얻고 원래 정수를 얻습니다. 그가 너무 고의적이고 무제한이라는 것입니다. 최적화라고 생각하십니까?
참고 : 엄격한 반올림 작업을 수행 해야하는 경우이 메소드를주의해서 사용해야하지만 여전히 수학 기능을 사용해야합니다.
그렇다면 유일한 사람이 아니라면
IF-ELSE 조건을 사용하는 것은 매우 명확한 논리이므로 데이터 처리가 크지 않은 경우에는 그다지 간결하지 않습니다.
if (a === 1) {// 여기에서 엄격하게 동일한 기호 "==="를 사용하는 것이 좋습니다. 유형 변환은 a = 2} else (a === 3) {a = 4} else {a = 5}를 수행하지 않습니다.다음을 살펴보십시오 || 및 && 코드의 체중 감량을 위해 :
((a === 1) && (true, a = 2)) || ((a === 3) && (true, a = 4)) || (a = 5)
한 줄로 이루어지고 체중이 성공적으로 줄어 듭니다. || &&, 간단한 원칙은 말할 것도 없습니다. 쉼표 연산자를 사용할 때 이해하기 쉽지 않습니다. 계속해서 3 배 연산자에게 변경할 수 있습니다.
(a === 1)? a = 2 :( (a === 3)? (a = 4) : (a = 5))
이러한 글쓰기 방식은 충분히 단순화되는 것처럼 보이지만 다른 사람들이 코드를 보는 것은 약간 어려울 것입니다.
성가신 문자열 스티칭 DOM 구조를 Tostring으로 교체하십시오
DOM 구조를 동적으로 생성하려면 일반적으로 다음과 같이 구현합니다.
var template = "<div>"+ "<h2> {title} </h2>"+ "<div class = 'content'yattr = ''> {content} </div>"+ "</div>"다양한 속성과 매개 변수가 추가되면 크고 작은 따옴표가 혼란 스러울 때 오류를 쉽게보고 할 수 있습니다. 그러나 ES6은이 문제를 해결하는 데 도움이되는 템플릿 문자열을 제공합니다. 다음과 같이 쓸 수 있습니다.
var template = <div> <h2> {title} </h2> <div class = 'content'yattr = ''> {content} </div> </div>그러나 문제는 ES6이 공식적으로 아직 도착하지 않았다는 것입니다 ... 두려워하지 마십시오.
var rcomment = ///*([/s/s]*?)/*//; // 곱하기 문자열 함수 ms (fn) {return fn.tostring (). match (rcomment) [1]}; ms (function () {/ * <div> <h2> {title} </h2> <div class = 'content'yattr = ''> {content} </div> </div> */})여기의 출력은 이전 문자열 출력과 동일합니다. 프론트 엔드 프로그래머는 자신의 DOM 구조에만주의를 기울이면됩니다.
AMD 모듈 지원, 프롬프트 코드 b를 추가하십시오. b
AMD (비동기 모듈 정의) 모듈 사양을 작성한 코드에 선언하여 다른 사람들이 AMD 사양을 통해 직접 모듈을로드 할 수 있도록 선언하십시오. 다른 사람이 사양을 통해 모듈을로드하지 않으면 일반적인 글로벌 객체를 우아하게 반환 할 수도 있습니다. jqueryui의 글쓰기 방법을 살펴 보겠습니다.
(function (factory) {if (typeof typeof = define === "function"&& define.amd) {// amd mode. 및 플러그인 "jQuery"define ([ "jquery"], factory)에 의존합니다.브라우저 측로드 스크립트 종속성에 코드를 더 적합하게하기 위해 AMD 모듈의 구조로 변경하십시오. 이 형식으로 코드를 작성하여 다른 사람들이 코드를 보 자마자 전문 개발자라는 것을 알 수 있도록하십시오.
상속의 가장 좋은 방법
JavaScript에는 크고 작은 10 가지가 넘는 상속 방법이 있습니다. 각 작문 방법의 장점과 단점은 다르며 각 방법은 하나씩 나열되지 않습니다. 공통 상속 방법을 예로 들어 프로토 타입 상속을 수행하십시오.
기능 parent () {} function child () {} child.prototype = parent.protoTypechild.prototype.constructor = child;이 방법은 실제로 child.prototype 및 parent.prototype에 저장된 포인터를 동일한 객체에 가리키므로 일부 속성이 Child Object 프로토 타입에서 확장되면 부모 객체 프로토 타입이 나중에 계속 상속되도록 부모 객체 프로토 타입도 다시 작성됩니다. 따라서이 문제를 해결하려면 임시 생성자 쓰기 방법을 빌려보십시오.
function empty () {} empty.prototype = parent.prototype; child.prototype = new empty (); child.prototype.constructor = child;이런 식으로, 부모 객체 자체의 특성 및 프로토 타입 방법은 보호됩니다. "최적"은 약간 과장되었지만 비교할 수 있습니다. 나는 모든 사람이 자신의 글쓰기 스타일을 가지고 있다고 생각하며, 차용 전화의 장점과 단점도 있으며 속성 상속을 구현하기 위해 적용합니다. 길이는 제한되어 있으며 하나씩 소개하지 않습니다.
요약
위에서 언급 한 JavaScript의 모든 대안 작문 방법은 이해하기 쉽거나 효율성을 향상시키기위한 구문 설탕입니다. 위에서 언급 한 바와 같이 IF-ELSE를 생략하는 실습과 같은 이러한 방법은 바람직하다. 일부는 AMD 및 상속 방법과 같은 코드의 호환성과 성능을 향상 시키도록 설계되었습니다. ... 나는 신인이며 위의 내용에는 불완전하고 설명 할 수없는 내용이 있습니다.
위의 내용은 JavaScript의 대체 작문 방법에 대한 관련 소개입니다. 모든 사람에게 도움이되기를 바랍니다.