English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

JavaScript 기본 강의

JavaScript 객체

JavaScript 함수

JS HTML DOM

JS 브라우저 BOM

AJAX 기본 강의

JavaScript 참조 매뉴얼

JavaScript 경험

모든 사람이 JavaScript를 작성하는 방식은 다릅니다. 그러나 공통점도 많습니다. 다음은 매우 간단한 JavaScript 작성 경험 지침과 주의사항이며, 길을 잘 가르쳐 줍니다.

전역 변수를 피하십시오

전역 변수의 사용을 최소화하십시오. 이는 모든 데이터 타입, 객체 및 기능을 포함합니다.

전역 변수와 함수는 다른 스크립트에 의해 덮어 씌어질 수 있습니다. 따라서 지역 변수를 사용하십시오.

지역 변수는 사용해야 합니다letconstvar키워드 선언을 하지 않으면 전역 변수가 됩니다.

항상 변수를 선언하십시오

변수와 상수를 선언할 때는 사용하십시오letconst키워드 대신var

  // 추천:
  let myAge = 22;m&#
  const myName = "w"3x = "w
  
  // 불추천:
  var myAge = 22;m&#
  var myName = "w"3x = "w

이렇게 하는 이유가 많습니다.-예를 들어, 예기치 않은 재할당으로 인한 문제를 피하고, 가독성 향상에 영향을 미치는 것을 피합니다.

각 스크립트나 함수의 상단에 모든 선언을 할 것은 좋은 프로그래밍 관행입니다.

아래는 더 간결한 코드를 제공하며, 코드의 시작 부분에 모든 변수를 찾을 수 있는 곳을 제공합니다.

  // 선언은 가장 먼저 작성합니다
  let firstName, lastName, price, discount, fullPrice;
  
  // 사용
  firstName = "w3x = "w
  lastName = "Choudhary";
  
  price = 26.9var x =
  discount = 1.25;m&#
  
  fullPrice = price * 100 / discount;

확장 문법 사용

가독성을 최대한 높이기 위해 확장 문법을 사용하여 JS의 각 행을 줄 바꿈합니다.

  // 추천:
  function myFunc() {
  console.log("Parrot Tutorial");
  }
  
  // 불추천:
  function myFunc() { console.log("Parrot Tutorial"); }

연산자와 연산자 대상, 매개변수 등 사이에 공백을 사용해야 합니다:

  // 이 더 가독적입니다
  if(dayOfWeek=== 7 && weather === "sunny") {
  /* Some code */
  }
  
  // 가독성이 좋지 않습니다
  if(dayOfWeek===7&&weather==="sunny"){
  /* Some code */
  }

숫자, 문자열, 부울 값을 객체로 선언하지 마세요

숫자, 문자열, 부울 값을 항상 원시 값으로 간주하세요. 객체로는 간주하지 마세요.

이러한 타입을 객체로 선언하면 실행 속도가 저하되고 예상치 못한 결과가 발생할 수 있습니다.

var str1 ="New Delhi";
var str2 =new String("New Delhi");
document.write(str1 ===str2); // false를 반환합니다, 왜냐하면 str1 str와2 다른 타입을 가집니다
테스트를 보고 보세요‹/›

객체를 비교할 수 없습니다:

var str1 =new String("New Delhi");
var str2 =new String("New Delhi");
document.write(str1 ==str2); // false를 반환합니다, 왜냐하면 str1str와2다른 객체입니다
document.write(str1 ===str2); // false를 반환합니다, 왜냐하면 str1str와2다른 객체입니다
테스트를 보고 보세요‹/›

new Object() 사용하지 마세요

  • 사용{} 대신 new Object() 사용

  • 사용"" 대신 new String() 사용

  • 사용0 대신 new Number() 사용

  • 사용false 대신 new Boolean() 사용

  • 사용[] 대신 new Array() 사용

  • 사용/()/사용new RegExp() 대신

  • 사용function (){} 대신 new Function() 사용

()}}1 ={};
()}}2 ="";
()}}3 =0;
()}}4 =false;
()}}5 =[];
()}}6 = /()/;m&#
()}}7 let x
테스트를 보고 보세요‹/›

= function(){};

자동 타입 변환에 주의하십시오

JavaScript는 느슨한 타입이나 동적 언어입니다. JavaScript의 변수는 특정 값 타입과 직접 연결되지 않으며, 모든 변수에 모든 타입의 값을 할당하고 재할당할 수 있습니다. 2var x = // 0;
x is now a Number3x = "w   // codebox.com";
x is now a String   // x = true;
테스트를 보고 보세요‹/›

x is now a Boolean

(비수): 50 + 10;m&#// 수학 연산을 수행할 때, JavaScript는 숫자를 문자열로 변환할 수 있습니다: 6return
(비수): 50 + 0, typeof num is a number10=== "  // 0"5010"
", typeof num is a string5num = " + 10;m&#  // 0"5010"
", typeof num is a string5num = " - 10;m&#  // 0"4return "
테스트를 보고 보세요‹/›

0", typeof num is a number주의하십시오, 숫자가 의도치 않게 변환될 수 있습니다.NaN

(비수): 50 * num =  // "Parrot";
테스트를 보고 보세요‹/›

return "NaN", typeof num is a number

정확한 비교를 사용하십시오

== 비교 연산자는 항상 전환된 후 비교됩니다(타입에 맞게).

  1 이 === 전체 비교 연산자는 값과 타입을 강제로 비교합니다.1=== "   // == true;
  1 == "  // == true;
  
  1 true1=== "  // === true;
  1 ";   // === true;

false

템플릿 상수 사용문자열에 값을 삽입하려면 템플릿 상수를 사용하십시오.템플릿 상수

  // 추천:
  ;m ${myName}!`);39let myName = w39codebox.com&#
  (` `)。39console.log(`Hi! I&#
  
  // 불추천:
  ;m ${myName}!`);39let myName = w39codebox.com&#
  ;;39console.log('Hi! I\'m&# + ; + myName39');

;!&#

일반 루프를 사용할 때forfor...in또는for...of루프를 사용하여 정확하게 초기화되도록 보장하십시오.let키워드.

  let fruits = ["Apple", "Mango", "Banana"];
  
  // 추천:
  for(let i of fruits) {
   console.log(i);
  }
  
  // 불추천:
  for(i of fruits) {
   console.log(i);
  }

다음을 기억하십시오:

  • 루프 키워드와 왼쪽 괄호 사이에는공백

  • 쌍 중괄호와 괄호 사이에는한 공백

함수 이름

함수 이름에 대해 lowerCamelCasing을 사용하고, 적절한 위치에서 간결하고 이해하기 쉬운 의미 있는 이름을 사용하십시오.

  // 추천:
  function sayHello() {
  alert('Hello!');
  }
  
  // 불추천:
  function sayhello() {
  alert('Hello!');
  }

switch를 기본 값으로 끝내기

switch항상 default:로 끝내야 합니다. 필요하지 않다고 생각해도.

var day;
switch (new Date().getDay()) {
case 0: day = "Sunday";
break;
case 1: day = "Monday";
break;
case 2: day = "Tuesday";
break;
case 3: day = "Wednesday";
break;
case 4: day = "Thursday";
break;
case 5: day = "Friday";
break;
case 6: day = "Saturday";
break;
default: day = "Undefined Day";
}
테스트를 보고 보세요‹/›

에러 처리

프로그램의 일부 상태가 미취소된 오류를 발생시키면, 실행이 중단되고 예제의 실용성이 저하될 수 있습니다.

따라서, 다음을 사용해야 합니다.try...catch에러를 잡기 위해 블록을 사용합니다.

  try {
  console.log(results);
  }
  catch(e) {
  console.error(e);
  }