JavaScript 면접 질문 — 데이터 형식

아마존에서 내 책 보기https://www.amazon.com/John-Au-Yeung/e/B08FT5NT62
지금 http://jauyeung.net/subscribe/에 내 이메일 목록을 구독하십시오.
전방 개발자의 일자리를 얻기 위해서 우리는 코딩 면접을 완성해야 한다.
본고에서 우리는 인터뷰에서 자주 묻는 기교적인 문제를 포함하여 데이터 유형의 문제를 소개할 것이다.

JavaScript의 falsy 값은 무엇입니까?
JavaScript에서 falsy 값은 다음과 같습니다.
  • ''
  • 0
  • null
  • undefined
  • false
  • NaN
  • 그것들이 브리 값으로 변환되면, 그것들은 false으로 변한다.

    값이 잘못되었는지 어떻게 검사합니까?!! 연산자나 Boolean 기능을 사용하여 그것들의 오류 여부를 검사합니다.
    만약 어떤 값이falsy라면, 둘 다 되돌아갈 것이다. false예를 들면 다음과 같습니다.
    !!0
    
    (으)로 돌아갑니다.
    Boolean(0)
    
    또한 false로 돌아갑니다.

    무엇이 진정한 가치관입니까?
    실제 값은 위에 나열된 거짓 값을 제외한 모든 값입니다.

    포장기 대상은 무엇입니까?
    패키지 대상은 구조 함수에서 만들어진 대상이며, 이러한 구조 함수는 기본값을 되돌려주지만, 숫자나 문자열이면 그 유형은 false이다.기호와 BigInt에는 고유한 유형이 있습니다.
    자바스크립트에는 'object', Number 구조 함수와 String 공장 함수가 있다.
    원어 값이 임시로 패키지 대상으로 변환되어 호출 방법입니다.
    예를 들어 다음과 같이 쓸 수 있습니다.
    'foo'.toUpperCase()
    
    그리고 우리는 얻었다Symbol.그것의 작업 원리는 BigInt 텍스트를 대상으로 변환한 다음에 그것을 호출하는 'FOO' 방법이다.
    디지털 및 BigInt의 패키지 객체를 다음과 같이 만들 수도 있습니다.
    new Number(1)
    BigInt(1)
    
    직접 'foo'toUpperCase() 구조 함수를 사용하는 것은 매우 유용하지 않기 때문에 우리는 그것을 사용하는 것을 피해야 한다.그것들은 우리에게 대상의 유형을 제공했지만 원시 대상과 같은 내용을 가지고 있다.
    만약 우리가 Number 조작부호를 사용하여 StringNumber 패키지 대상을 만들었다면 다음과 같다.
    const numObj = new Number(1);
    const strObj = new String('foo');
    
    우리는 String 방법을 사용하여 이 포장기 대상의 원어치 버전을 다음과 같이 되돌릴 수 있다.
    numObj.valueOf();
    strObj.valueOf();
    

    은성 협박과 현성 협박은 어떤 차이가 있습니까?
    암시적 강제는 JavaScript 해석기가 데이터를 명시적으로 호출할 필요 없이 한 유형에서 다른 유형으로 변환한다는 것을 의미합니다.
    예를 들어, 다음 표현식이 문자열로 암시적으로 변환됩니다.
    console.log(1 + '2');
    
    그리고 우리는 다음과 같은 것을 얻었다.
    '12'
    
    되돌아오는 이유는 1 스텔스 변환new이다.
    또 다른 예는 다음과 같다.
    true + false
    
    우리는 valueOf가 1로 전환되었기 때문에 '1'가 0으로 전환되었기 때문에 그것들을 합쳤다.
    다음 예는 다음과 같습니다.
    3 * '2'
    
    truefalse로 전환되어 곱하기 때문에 6으로 돌아갑니다.
    JavaScript 필수 규칙의 전체 목록은 here입니다.
    현식 변환은 호출 방법이나 연산자 변환 형식을 사용하여 이루어진다.
    우리는 코드에서 강제를 볼 수 있다.
    예를 들면 다음과 같습니다.
    +'1' + +'2'
    
    '2'2가 모두 일원'1' 연산자에 의해 숫자로 전환되었기 때문에 3을 얻었다.
    우리도 함수로 같은 일을 할 수 있다.예를 들어 우리는 일원'2' 연산자가 아닌 + 함수를 사용할 수 있다.
    위의 표현식을 다음과 같이 바꿀 수 있습니다.
    parseInt('1') + parseInt('2')
    
    그리고 우리는 같은 결과를 얻었다.

    0 | | 1이 반환하는 항목은 무엇입니까?parseIntfalsy이기 때문에 두 번째 조작수 운행을 촉발합니다. 이것은 우리에게 1을 주었습니다.그래서 1로 돌아가야 한다.

    0과 1은 무엇을 되돌려줍니까?+falsy이기 때문에 운행을 중지할 것입니다. 왜냐하면 우리는 단거리 평가를 했기 때문입니다.그래서 우리는 0으로 돌아간다.

    false='0'은 무엇을 되돌려줍니까?0는falsy이고0는0으로 전환되었는데이는falsy이기 때문에false의 비교 기준은 같다.따라서 우리는 돌아가야 한다'0'.

    4<5<6은 무엇을 되돌려줍니까?
    JavaScript에서 비교는 왼쪽에서 오른쪽으로 진행됩니다.우선==은 평가를 받을 것이고 이것은 우리true에게 줄 것이다.그리고 4 < 5를 평가하여 true로 전환했고 후자도true < 6였다.
    그래서 우리는 1 < 6로 돌아왔다.

    6>5>4는 무엇을 되돌려줍니까?
    JavaScript에서 비교는 왼쪽에서 오른쪽으로 진행됩니다.이에 따라true 우선 평가가 이뤄진다.이것은 우리에게 주었다 true.그리고 6 > 5에 대해 값을 구하고 이를 true, 즉true > 4로 전환한다.
    따라서 표현식이 되돌아온다1 > 4.

    typeof undefined = typeof null 은 무엇을 되돌려줍니까?false반품falsetypeof undefined반품'undefined'.typeof null'object'와 같기 때문에 표현식은 'undefined'이어야 한다.

    유형 10은 무엇을 되돌려줍니까?
    JavaScript는 'object'false로 계산합니다.따라서 되돌아오기 typeof typeof 10 는 문자열이기 때문에 되돌아오기 typeof (typeof 10) 이다.

    좋은 웹페이지 즐겨찾기