웹 프론트엔드 JS 튜토리얼 JS에 대한 몇 가지 기본적인 질문

JS에 대한 몇 가지 기본적인 질문

May 21, 2018 am 10:21 AM
javascript 베이스 질문

개발 및 학습 중에 우리는 종종 js 문제에 직면하게 됩니다. 이 기사에서는 관련된 js 기본 문제를 소개합니다.

웹페이지에 CSS와 JS가 배치되는 순서는 무엇인가요?

일반적으로 head 태그에 CSS를 넣고 body 코드 끝에 JS 코드를 넣습니다.

<!DOCTYPE html><html><head>
  <meta charset="utf-8">
  <title>JS基础</title>
  <style>
    
    /* 这里放css代码 */      
    
  </style></head><body>
  <!-- 这里放HTML代码 -->
    
  <script>
로그인 후 복사




흰색 화면과 FOUC에 대한 설명

흰색 화면: 넣으면 CSS 스타일 일부 시나리오(새 창 열기, 새로 고침 등)에서는 @import 태그를 사용하는 경우에도 콘텐츠가 점차적으로 표시되지 않고 페이지에 흰색 화면이 나타납니다. 링크를 CSS에 배치하여 헤드에 배치하면 흰색 화면 현상이 나타날 수도 있습니다.

스크립트는 후속 콘텐츠 표시를 차단합니다.

스크립트는 후속 구성 요소의 다운로드를 차단합니다.
이미지와 CSS의 경우 동시에 로드되지만(예: 하나의 도메인 이름으로 동시에 두 개의 파일 로드) JS를 로드할 때 동시성을 비활성화하고 다른 콘텐츠가 다운로드되지 않도록 방지하므로 JS를 페이지 상단에 배치하면 흰색 화면도 발생합니다.

FOUC(Flash of Unstyled Content): IE 브라우저의 경우 특정 시나리오(링크 클릭, URL 입력, 북마크를 사용하여 입력 등)에서 CSS 스타일을 하단에 배치하면 FOUC 현상이 발생합니다. (스타일이 지정되지 않은 콘텐츠는 점진적으로 로드되고 CSS가 로드된 후 페이지에 갑자기 스타일이 표시됩니다.) Firefox의 경우 FOUC 현상이 항상 발생합니다.

비동기와 지연의 기능은 무엇인가요? 차이점이 무엇인가요

비동기 및 지연이 없으면 브라우저가 로드되는 즉시 현재 스크립트가 로드되어 실행되며, 브라우저는 스크립트 태그 아래의 문서 요소를 렌더링하지 못하도록 차단됩니다. 그러나 비동기 및 지연을 사용하면 브라우저가 차단됩니다. 후속 문서를 로드하고 렌더링할 수 있습니다. 프로세스는 JS 스크립트의 로드 및 실행과 동시에 수행됩니다. 즉, 로드는 비동기식입니다.

둘의 차이점: 가장 중요한 것은 스크립트를 다운로드한 후 언제 실행하느냐입니다. Defer는 문서가 구문 분석되고 표시될 때까지 로드 순서에 따라 스크립트 실행을 지연하는 반면, async는 오랫동안 즉시 실행됩니다. 선언한 순서에 관계없이 로드됩니다.
일반적으로 연기는 우리의 사용 시나리오에 더 가깝습니다.

웹 페이지의 렌더링 메커니즘

HTML 태그 구문 분석, DOM 트리 구축

CSS 태그 구문 분석, CSSOM 트리 구축

DOM과 CSSOM을 기본 레이아웃용 렌더링 트리로 결합

각 노드의 기하학적 구조 계산

그리기 각 노드를 화면에 표시하여 사용자에게 표시합니다.

JavaScript는 몇 가지 데이터 유형을 정의합니까? 단순 유형은 무엇입니까? 복잡한 유형은 무엇입니까?

Null: 널 포인터입니다.

Underfined: 포인터가 있지만 아무것도 가리키지 않습니다. Space

Boolean: 부울 값, true, false(true, false)

Number: 숫자 유형.

String: 작은따옴표나 큰따옴표로 표시되는 문자열 유형입니다.

Object: JS의 핵심 개념이자 가장 중요한 데이터 유형인 Object. (모든 것이 객체입니다)

처음 5개 유형은 단순 유형이고, Object는 복합 유형입니다.

NaN, 정의되지 않음, null은 각각 무엇을 의미하나요?

NaN: 숫자가 아님을 의미합니다. 이는 숫자가 아니며 자신을 포함한 어떤 값과도 같지 않음을 의미합니다(어떤 것과도 같지 않은 숫자 유형). 값)

underfined : Underfined의 유일한 값입니다. 이는 변수가 선언되기만 하고 초기화되지 않았음을 의미합니다. 즉, 이 포인터가 있지만 이 포인터는 어떤 공간도 가리키지 않는다는 의미입니다

null: Null의 유일한 값, 즉 존재하지 않는 것을 의미합니다

typeof와 instanceof의 함수와 차이점은 무엇입니까? 피연산자는 어떤 유형이든 가능합니다.

function a(){}

a(){}typeof a"function" //피연산자는 함수이고 return functiontypeof 123421"number"typeof "32423423423""string"typeof true"boolean" typeof 정의되지 않음"정의되지 않음" // 정의되지 않은 변수를 확인하는 데 사용합니다. typeof window "object" //다른 모든 항목은 object를 반환합니다.



instanceof는 변수가 객체의 인스턴스인지 확인하는 데 사용됩니다. typeof는 null, 배열을 만날 때 객체 유형을 반환하기 때문입니다. 또는 객체이므로 객체가 배열인지 또는 변수가 객체의 인스턴스인지 확인하려면 instanceof

Code 문제

1를 사용해야 합니다. number, string, Boolean, Function

function isNumber(el){ 
 if ((typeof el)==="Number"){   return true;
   }  else { 
return false
  };
}function isString(el){ 
  if ((typeof el)==="String"){   return true;
   }  else { 
return false
  };
}function isBoolean(el){ if ((typeof el)==="Boolean"){   return true;
   }  else { 
return false
  };
}function isFunction(el){  if ((typeof el)==="Function"){   return true;
   }  else { 
return false
  };
}var a = 2, 
b = "jirengu", 
c = false;alert( isNumber(a) ); //truealert( isString(a) ); //falsealert( isString(b) ); //truealert( isBoolean(c) ); //truealert( isFunction(a)); //falsealert( isFunction( isNumber ) ); //true
로그인 후 복사

2. 다음 코드의 출력 결과는?

JS에 대한 몇 가지 기본적인 질문

I am a picture

3. 다음 코드의 출력 결과는?

var a = 1;

a+++a;typeof a +2;



결과는 number2, (typeof는 우선순위가 매우 높기 때문에 typeof a가 먼저 계산되고 결과는 number가 되므로 2가 더해지기 때문에 number2)

4. 배열을 탐색하고 배열의 각 항목을 인쇄합니다. Square

var arr = [3,4,5]// todo..// 출력 9, 16, 25


코드는 다음과 같습니다. 다음:

JS에 대한 몇 가지 기본적인 질문

나는 그래프입니다

5. JSON을 트래버스하고 내부 값을 인쇄하세요

var obj = { name: 'hunger', sex: 'male', age: 28}//todo ...// 출력 이름:hunger, sex:male, age:28

코드는 다음과 같습니다. 그림: (이것은 모든 곳에서 참조됨)

JS에 대한 몇 가지 기본적인 질문

I am a picture

6. 다음 코드의 출력은 무엇입니까? Why

console.log(a);var a = 1;console.log (a);console.log( b);

JS가 전역 변수를 승격하고 a는 선언만 되지만 할당되지 않기 때문에 첫 번째 console.log(a); 출력은 미약합니다.
두 번째 console.log(a);의 출력은 var a =1; 다음에 a에 1을 할당하기 때문에 1입니다.

세 번째 console.log(b) 출력은 b가 선언되거나 값이 할당되지 않았기 때문에 오류를 보고합니다.


이 글에서는 몇 가지 기본 소개 문제를 소개합니다. 더 많은 관련 지식을 원하시면 PHP 중국어 웹사이트를 주목해 주세요.

관련 권장 사항:

프런트 엔드 js로 require.js를 모듈화하는 방법


CSS


AJAX ASP/PHP 요청 예제에 대한 관련 지식


위 내용은 JS에 대한 몇 가지 기본적인 질문의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
1 몇 달 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
1 몇 달 전 By 尊渡假赌尊渡假赌尊渡假赌
Will R.E.P.O. 크로스 플레이가 있습니까?
1 몇 달 전 By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

WebSocket 및 JavaScript: 실시간 모니터링 시스템 구현을 위한 핵심 기술 WebSocket 및 JavaScript: 실시간 모니터링 시스템 구현을 위한 핵심 기술 Dec 17, 2023 pm 05:30 PM

WebSocket과 JavaScript: 실시간 모니터링 시스템 구현을 위한 핵심 기술 서론: 인터넷 기술의 급속한 발전과 함께 실시간 모니터링 시스템이 다양한 분야에서 널리 활용되고 있다. 실시간 모니터링을 구현하는 핵심 기술 중 하나는 WebSocket과 JavaScript의 조합입니다. 이 기사에서는 실시간 모니터링 시스템에서 WebSocket 및 JavaScript의 적용을 소개하고 코드 예제를 제공하며 구현 원칙을 자세히 설명합니다. 1. 웹소켓 기술

JavaScript와 WebSocket: 효율적인 실시간 일기예보 시스템 구축 JavaScript와 WebSocket: 효율적인 실시간 일기예보 시스템 구축 Dec 17, 2023 pm 05:13 PM

JavaScript 및 WebSocket: 효율적인 실시간 일기 예보 시스템 구축 소개: 오늘날 일기 예보의 정확성은 일상 생활과 의사 결정에 매우 중요합니다. 기술이 발전함에 따라 우리는 날씨 데이터를 실시간으로 획득함으로써 보다 정확하고 신뢰할 수 있는 일기예보를 제공할 수 있습니다. 이 기사에서는 JavaScript 및 WebSocket 기술을 사용하여 효율적인 실시간 일기 예보 시스템을 구축하는 방법을 알아봅니다. 이 문서에서는 특정 코드 예제를 통해 구현 프로세스를 보여줍니다. 우리

간단한 JavaScript 튜토리얼: HTTP 상태 코드를 얻는 방법 간단한 JavaScript 튜토리얼: HTTP 상태 코드를 얻는 방법 Jan 05, 2024 pm 06:08 PM

JavaScript 튜토리얼: HTTP 상태 코드를 얻는 방법, 특정 코드 예제가 필요합니다. 서문: 웹 개발에서는 서버와의 데이터 상호 작용이 종종 포함됩니다. 서버와 통신할 때 반환된 HTTP 상태 코드를 가져와서 작업의 성공 여부를 확인하고 다양한 상태 코드에 따라 해당 처리를 수행해야 하는 경우가 많습니다. 이 기사에서는 JavaScript를 사용하여 HTTP 상태 코드를 얻는 방법과 몇 가지 실용적인 코드 예제를 제공합니다. XMLHttpRequest 사용

jQuery가 양식 요소 값을 얻을 수 없는 문제를 해결하는 방법 jQuery가 양식 요소 값을 얻을 수 없는 문제를 해결하는 방법 Feb 19, 2024 pm 02:01 PM

jQuery.val()을 사용할 수 없는 문제를 해결하려면 구체적인 코드 예제가 필요합니다. 프론트 엔드 개발자에게는 jQuery를 사용하는 것이 일반적인 작업 중 하나입니다. 그중에서도 .val() 메서드를 사용하여 양식 요소의 값을 가져오거나 설정하는 것은 매우 일반적인 작업입니다. 그러나 특정한 경우에는 .val() 메서드를 사용하지 못하는 문제가 발생할 수 있습니다. 이 문서에서는 몇 가지 일반적인 상황과 해결 방법을 소개하고 구체적인 코드 예제를 제공합니다. 문제 설명 jQuery를 사용하여 프런트 엔드 페이지를 개발할 때 때때로 다음과 같은 문제가 발생할 수 있습니다.

win11 설치 후 시작메뉴가 안되는 문제 해결 방법 win11 설치 후 시작메뉴가 안되는 문제 해결 방법 Jan 06, 2024 pm 05:14 PM

많은 사용자가 win11 시스템 업데이트를 시도했지만 업데이트 후에 시작 메뉴를 사용할 수 없다는 사실을 발견했습니다. 이는 최신 업데이트에 문제가 있기 때문일 수 있습니다. Microsoft가 문제를 해결하기 위해 이러한 업데이트를 수정하거나 제거할 때까지 기다릴 수 있습니다. 문제를 함께 살펴보겠습니다. win11을 설치한 후 시작 메뉴를 사용할 수 없는 경우 해결 방법 방법 1: 1. 먼저 win11에서 제어판을 엽니다. 2. 그런 다음 프로그램 아래에 있는 "프로그램 제거" 버튼을 클릭합니다. 3. 제거 인터페이스에 들어가서 왼쪽 상단에 있는 "설치된 업데이트 보기"를 찾으세요. 4. 들어간 후에는 업데이트 정보에서 업데이트 시간을 확인하고 모든 최신 업데이트를 제거할 수 있습니다. 방법 2: 1. 또한 업데이트 없이 win11 시스템을 직접 다운로드할 수도 있습니다. 2. 이 제품은 가장 없는 제품입니다.

Rulong 8 Wine Master 시험의 문제는 무엇입니까? Rulong 8 Wine Master 시험의 문제는 무엇입니까? Feb 02, 2024 am 10:18 AM

Yulong 8 Wine Master 시험과 관련된 질문은 무엇입니까? 이에 해당하는 대답은 무엇입니까? 시험에 빨리 합격하는 방법은 무엇입니까? Master of Wine 시험 활동에는 답변해야 할 질문이 많이 있으며, 답변을 참조하여 문제를 해결할 수 있습니다. 이 질문들은 모두 와인에 대한 지식과 관련이 있습니다. 참고가 필요하다면 Yakuza 8 Wine Master 시험 문제에 대한 답변의 자세한 분석을 살펴 보겠습니다! Rulong 8 Wine Master 시험 문제에 대한 자세한 설명 1. "와인"에 관한 질문. 하와이 왕족이 설립한 증류소에서 생산되는 증류주로, 하와이에서 대량으로 재배되는 사탕수수의 설탕을 원료로 만들어집니다. 이 와인의 이름은 무엇입니까? 답: 럼 2. "와인"에 관한 질문입니다. 사진은 건조 인삼과 건조 버무스로 만든 음료를 보여줍니다. 올리브를 첨가한 것이 특징이며 "코크니"로 알려져 있습니다.

JavaScript에서 HTTP 상태 코드를 쉽게 얻는 방법 JavaScript에서 HTTP 상태 코드를 쉽게 얻는 방법 Jan 05, 2024 pm 01:37 PM

JavaScript에서 HTTP 상태 코드를 얻는 방법 소개: 프런트 엔드 개발에서 우리는 종종 백엔드 인터페이스와의 상호 작용을 처리해야 하며 HTTP 상태 코드는 매우 중요한 부분입니다. HTTP 상태 코드를 이해하고 얻는 것은 인터페이스에서 반환된 데이터를 더 잘 처리하는 데 도움이 됩니다. 이 기사에서는 JavaScript를 사용하여 HTTP 상태 코드를 얻는 방법을 소개하고 구체적인 코드 예제를 제공합니다. 1. HTTP 상태 코드란 무엇입니까? HTTP 상태 코드는 브라우저가 서버에 요청을 시작할 때 서비스가

Wuhuami의 새로운 획기적인 테스트에 대해 자주 묻는 질문: 2월 28일, 여러분의 도착을 기대합니다! Wuhuami의 새로운 획기적인 테스트에 대해 자주 묻는 질문: 2월 28일, 여러분의 도착을 기대합니다! Feb 26, 2024 pm 05:22 PM

Wuhua Mixin은 2월 28일에 브레이킹 테스트를 실시할 것이라고 확인했습니다. 이번에는 이전 테스트에 참여한 적이 있는지, 이번에 자격이 있는지, 시작과 끝이 무엇인지 등 브레이킹 테스트의 일반적인 문제를 주로 해결할 것입니다. 테스트, 사전 다운로드 시간은 무엇인지, 지원되는 기기 플랫폼과 기타 콘텐츠를 살펴보겠습니다. Wuhuami의 새로운 획기적인 테스트에 대해 자주 묻는 질문: 2월 28일, 여러분의 도착을 기대합니다! 1. "브레이킹 테스트"의 성격은 무엇입니까? 이 테스트는 Android에 대한 제한된 과금 및 파일 삭제 테스트입니다. 테스트 후에는 이 테스트의 게임 데이터가 삭제됩니다. 2. "오프닝 테스트" 또는 "입문 테스트"에 참가한 적이 있습니까? 이번에 "오프닝 테스트" 또는 "입문 테스트"에 참가할 수 있는 자격이 있습니까? 아래 QR코드를 스캔하여 " 클로즈베타에 참여해주신 플레이어분들께"로 이동해주세요.

See all articles