프런트엔드 스몰 10가지(2019.5.2)

2615 단어 javascriptjquery
1. 왜 jQuery는 전체적으로 익명 함수로 호출됩니까?
익명 함수는 안에 있는 모든 것을 국부적으로 실행하기 때문에 jQuery를 인용할 때 다른 코드와 충돌을 방지할 수 있습니다.
2. jQuery 정적 방법과 실례적 방법의 차이
  • $()는 jQuery 방법을 호출하여 되돌아오는 jQuery 대상이고, $() 호출 방법은 실례적인 방법이며, 실례적인 방법은 $()만 사용할 수 있다
  • 예: $("li").each()
  • $는 jQuery 함수(방법),$ 호출 방법은 정적 방법/도구 방법, 정적 방법은 $() 호출도 가능하고 원생javascript
  • 호출도 가능합니다.
    예: $().each()3. typeof null의 결과가 object인 이유는 무엇입니까?
    console.log(typeof null) //object

    JavaScript의 초기 구현에서 JavaScript의 값은 유형을 나타내는 라벨과 실제 데이터 값으로 표시됩니다.객체의 유형 레이블은 0입니다.null은 빈 포인터를 대표하기 때문에 (대부분의 플랫폼에서 0x00) null의 형식 탭도 0이 되고 typeofnull은 잘못된 'object' 를 되돌려줍니다.
    MDN 링크:https://developer.mozilla.org...
    4,undefined는 js의 키가 아닙니다. 저희는 프로젝트에서undefined인지 아닌지를 이렇게 판단하는 습관이 있습니다.
    name===undefined?'a':'b'

    그러나 수동으로undefined를 정의하고 값을 부여하면 js의 변수 형식undefined를 덮어씁니다
    let undefined='a'
    console.log(undefined) //a

    따라서 프로젝트를 할 때 변수에 undefined라고 이름을 붙이고 값을 부여하지 마십시오
    5. 원형을 이용하여 메모리를 절약한다A:
       function person(name){
          this.name=name
          this.showName=function(){
            console.log(this.name)
          }
        }

    B:
        function personA(name) {
          this.name=name
        }
        personA.prototype={
          showName:function () {
            console.log(this.name)
          }
        }

    방법 A를 사용하여 new 대상을 만들 때 모든 대상이 showName 방법을 정의해야 합니다. 이것은 브라우저의 메모리를 증가시킬 수 있습니다. 사용 방법 B new 대상을 사용하면 모든 대상이 원형의 방법을 공유하여 메모리를 절약할 수 있습니다.
    6. new의 대상은 일반적으로 네 가지 절차를 거쳐 (1) 새로운 대상을 만든다(2) 구조 함수의 작용역을 이 대상에게 부여한다(즉this가 이 대상을 가리킨다) (3) 구조 함수를 실행하는 코드(4) 이 새로운 대상을 되돌려준다. 주의: new 키워드의 중요한 역할은 실례 대상의this와 원형 체인을 연결하는 것이다.
    7. 그룹의 index(array[-5]=?)
        let a=[1,2,3]
        //-1     a.length-1=2
        console.log(a[2])
        //-3     a.length-3=0
        console.log(a[0])
        
        //-5     a.length-5=-2
        //-2     a.length-2=1
        //  -5    a[1]
        console.log(a[1])

    8,antd의 allow Clear 작용은value의 값을 제거하는 것입니다. 만약에value가state에 저장되어 있다면 삭제할 수 있습니다.

    9. 대상은 중국어 속성이 있는데 어떻게 부수값을 해체하는 방식으로 중국어 속성을 얻습니까?
      let obj={'  ':1}
      const {'  ':b}=obj
      const {a:{'  ':b}}=obj 
      console.log(b,'b24') //1

    10. 객체 해체 기본값
    //    noa
    const {a='noa'}=obj
    //    nob
    const {a:{b='nob'}}=obj

    (끝)

    좋은 웹페이지 즐겨찾기