JavaScript (기초 지식 주의 1)

3301 단어
1. 변수 역할 영역
  • Javascript 의 변수의 scope 는 방법 블록 에 따라 구분 된다 (즉, function 의 큰 괄호 (곶).기억 하 세 요. function 블록 이지 for, while, if 블록 은 작용 역 의 구분 기준 이 아 닙 니 다.
  • 전역 변수 와 국부 변수 가 이름 을 바 꿀 때 국부 변수의 scope 는 전역 변수의 scope 를 덮어 씁 니 다. 국부 변수의 scope 를 떠 난 후에 전역 변수의 scope 로 다시 돌아 갑 니 다. 전역 변수 가 국부 변 수 를 만 났 을 때 전역 변 수 를 어떻게 사용 합 니까?window. global Variable Name 을 사용 합 니 다.
  • 자 바스 크 립 트 는 실행 하기 전에 전체 스 크 립 트 파일 의 성명 부분 을 완전 하 게 분석 하여 실제 변수의 역할 영역 을 확정 합 니 다.변수 향상 이다.

  • 2. 변수 향상
  • JavaScript 의 함수 정 의 는 특징 이 있 습 니 다. 전체 함수 체 의 문 구 를 먼저 스 캔 하여 모든 설명 변 수 를 함수 상단 으로 올 립 니 다.

  • 3. 엄격 한 패턴
  • strict 모드 는 JS 코드 의 첫 줄 에 'use strict' 라 고 쓰 십시오.
  • 엄격 한 모드 에서 모든 변수 이름 이 접두사 가 없 는 var 는 잘못 보고 합 니 다.
  • 엄격 하지 않 은 모드 에서 var 접두사 가 없 으 면 변 수 는 전역 변수 로 암시 적 으로 밝 혀 집 니 다.(비록 이렇게 말 했 지만, 나의 디 버 깅 결 과 는 가 바 르 가 없 는 scope 와 같다.)
  • 4. 몇 가지 유형의 판단
  • string: typeof varname === "string";
  • number: typeof varname = = "number" (특히 NaN)
  • undefined: typeof varname = = = "undefined" 또는 varname = = undefined (작은 따옴표 주의)
  • function: typeof varname = = "function" 또는 varname instanceof Function
  • null: varname === null
  • object: 대상 의 비교 에 사용 되 는 메모리 주소 값 비교 (전설 은 이렇다. 구체 적 으로 코뿔소 책 을 보고 나 서 이야기 하 자.)
  • NaN: isNaN(varname);

  • 주: 여기 type: of 는 함수 입 니 다. 반환 값 은 string 문자열 입 니 다.
    5. IF 판단 문 에 대한 주의 점
  • if 에서 판단 조건 이 특별히 지정 되 지 않 으 면 예 를 들 어 사용 =, = =, 이런 것 은 일률적으로 Boolean 전환 을 사용한다.
  • Boolean 전환 에서 ', NaN, undefined, null, 0, false 등 여섯 개 를 제외 하고 모두 ture 이다.주: "null", "0", "NaN" 과 같은 값 은 true 입 니 다.

  • 6. 유형 전환 의 문제
  • pareInt 와 pareFolat 의 전환 규칙: 1. 문자열 앞의 공백 문 자 를 무시 하고 첫 번 째 비 공백 문 자 를 찾 습 니 다.그러나 두 번 째 매개 변 수 를 지정 할 수 있 습 니 다. 예 를 들 어 parseInt ('blue'); /NaN parseInt('-23ABS'); // -23 parseInt('0xf1'); // 241 parseInt('101', 2); // 5
  • "+" 법 연산 자:
  • 1.             ,      
    2.                                            
    3.              valueOf toString
    4.                       
    5.                  ```
    
    
    
    ###7."  "    ###
    -              ,  (0    ):
    
    var s="name"||0;//s="name"
    var s=undefined||0;//s=0;```
    

    8. "= =" 연산 판단 \ # \ # \ #
  • 두 값 의 유형 이 같 으 면 엄격 한 연산
  • 을 집행 한다.
  • 두 값 의 유형 이 다 르 면
  • 1.     null,   undefined,    
    2.       ,      ,         ,    
    3.      true/false     1/0  
    4.        ,         ,     valueOf toString     
    5.       ```
    
    ###9.       ###
    -         (         ),            ,                   。
    - String  trim()   IE9      ,                 string 。(  :```String.prototype.fun1=function (){ console.log("successful")};```)
    -     null typeof  "object"
    - void              ,    undefined。
    -                ,           。
    - switch             (===)  ,        ,           ,        。
    - with      ,                    。
    
    ###10.ES6   (     )###
    -        map,  :var map=new map();
    -        set,  :var set=new set();
    - for ... of  ( for in             )。
    - rest             ,       arguments  。(    ...rest)。
    -          ,ES6        let, let  var              。
    - ES6          const     ,const let        。

    좋은 웹페이지 즐겨찾기