ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Eslint로 배운 자바스크립트 코딩 컨벤션 (에어비엔비 베이스)
    개발/Javascript 2022. 9. 13. 23:41

    괄호 안에는 룰 이름을 적어두겠습니다.

     

    변수 관련

     

    - 변수 네이밍 => camelCase 예시 const someData = { id : 1 }

     

    - var 는 사용하지 않을 것 ( no-var ),

        권고 방법 :

       선언한 변수에 값이 변경되는 일이 없다면  => const 사용,  변경 되는 일이 있다면 => let 사용

     


    함수 관련

     

    1.  (class-methods-use-this)  클래스 메소드에서 this 키워드를 사용하지 않을 경우

       => static 메소드로 변경해주거나 this 키워드를 사용

     

     

    2. (arrow-parens) arrow function의 파라미터가 한개일 경우 괄호 제거 권고

    const someFunction = (someVar) => { } => 파라미터가 한개일 경우 괄호 제거 권고

      권고 방법 : 

    const someFunction = someVar => { }

     

    //2022-09-26 추가

     

    3. (no-param-reassign) 넘겨받은 파라미터를 재정의하지 말것

     

    예시 :

    const someFunction = param => {
    	param++
    	console.log(param)
    }
    
    someFunction(1)

    권고 방법 :

    const someFunction = param1 => {
    	let param2 = param1
    	param2++
    	console.log(param2)
    }
    
    someFunction(1)

     


    오브젝트 관련

     

    1. (object-shorthand)

    const someObject = {
    
          id : id,
    
          name : name,
    
          someFunction : function () {}
    
    }

     

     오브젝트의 키 이름과 변수명이 같을 경우, 또 오브젝트 안에 함수가 들어갈 경우

    권고 방법 :

    const someObject = {
    
          id,
    
          name,
    
          someFunction () {}
    
    }

     

    키이름만 적어주고

     

    함수의 경우에도 생략하고 바로 함수선언을 할 것을 권고함.


    비동기 관련 

     

    1. (no-await-loop) : 반복문 안에서 await 키워드 사용 중단 권고

     

    for (const data of dataList) {
    
    	await fetchData(data)
    
    })

     

    권고 방법 :

     

    1-1.  for await 문 사용 // 차례차례 비동기 통신이 끝날때까지 대기함

    for await (const data of dataList) {
    
        await fetchData(data)
    
    })

     

    1-2. Promise.all로 한번에 비동기 통신처리

    const awaitList = dataList.map(data => fetchData(data)) // ( pending 상태의 promise들을 반환한다는 가정 )
    
    await Promise.all(awaitList) // 한번에 비동기 처리

     

    --2022-09-17 추가--


    strict 관련

     

    1. (strict): es5,6에선 use strict 사용 지양

     

    es5,6에선 이미 기본적으로 엄격하게 검사가 되고 있기 때문에 명시하지 않아도 됩니다.

     

     

     

    생각나는대로 업데이트 하겠습니다 혹시나 제가 틀린 부분이 있다면 지적 부탁드립니다.

    댓글

Designed by Tistory.