어떻게 하면 당신 의 자 바스 크 립 트 함 수 를 더욱 우아 하고 상세 하 게 설명 할 수 있 습 니까?
대상 매개 변수 사용 재 구성
함수 가 많은 인 자 를 받 기 를 원한 다 면 대상 을 사용 해 야 합 니 다.이 를 바탕 으로 재 구성 문법 으로 필요 한 인 자 를 추출 할 수 있다.
일반 표기 법
const greet = (obj) => {
  return `${obj.greeting}, ${obj.firstName}${obj.lastName}`;
}
const greet = ({
  greeting,
  firstName,
  lastName
}) => {
  return `${greeting}, ${firstName}${lastName}`;
}
이름 반전 함수
좋 은 이름 은 읽 기 코드 를 쉽게 만 들 고 리 셋 함수 의 이름 도 마찬가지 입 니 다.
일반 표기 법
const arr = [1, 2, 3].map(a => a * 2);
const double = a => a * 2;
const arr = [1, 2, 3].map(double);
조건문 에 서술 성 을 가지 게 하 다.
복잡 한 조건 판단 에 대해 우 리 는 함 수 를 단독으로 사용 하여 표시 할 수 있 으 며,조건 문 구 를 더욱 서술 적 으로 할 수 있다.
일반 표기 법
if (score === 100 || remainingPlayers === 1 || remainingPlayers === 0) {
    quitGame();
  }
const winnerExists = () => {
  return score === 100 ||
    remainingPlayers === 1 ||
    remainingPlayers === 0
}
if (winnerExists()) {
  quitGame();
}
switch 문 구 를 맵 이나 Object 로 교체 합 니 다.
switch 문구 가 길 었 을 때 코드 를 간소화 해 야 한 다 는 것 을 설명 합 니 다.
일반 표기 법
const getValue = (prop) => {
  switch (prop) {
    case 'a': {
      return 1;
    }
    case 'b': {
      return 2;
    }
    case 'c': {
      return 3;
    }
  }
}
const val = getValue('a');
const obj = {
  a: 1,
  b: 2,
  c: 3
}
const val = obj['a'];
지도 개작
const map = new Map([['a', 1], ['b', 2], ['c', 3]])
const val = map.get('a')
Object.assign 을 사용 하여 기본 속성 을 설정 합 니 다.
일반 표기 법
const menuConfig = {
  title: null,
  body: 'Bar'
};
function createMenu(config) {
  config.title = config.title || 'Foo';
  config.body = config.body || 'Bar';
}
createMenu(menuConfig);
const menuConfig = {
  title: 'Order',
  body: 'Send'
};
function createMenu(config) {
  config = Object.assign({
    title: 'Foo',
    body: 'Bar'
  }, config);
  // config : {title: "Order", body: "Bar"}
  // ...
}
createMenu(menuConfig);
좋 지 않 은 서법
var paging = function( currPage ){
    if ( currPage <= 0 ){
        currPage = 0;
        jump( currPage );    //   
    }else if ( currPage >= totalPage ){
        currPage = totalPage;
        jump( currPage );    //   
    }else{
        jump( currPage );    //   
    }
};
var paging = function( currPage ){
    if ( currPage <= 0 ){
        currPage = 0;
    }else if ( currPage >= totalPage ){
        currPage = totalPage;
    }
    jump( currPage );    //  jump      
};
만약 한 함수 가 너무 길다 면,몇 개의 주석 을 더 해야만 이 함 수 를 좀 쉽게 읽 을 수 있 으 며,이 함수 들 은 재 구성 할 필요 가 있다.
만약 함수 에 코드 가 독립 될 수 있다 면,우 리 는 이 코드 들 을 다른 독립 된 함수 에 넣 는 것 이 좋 겠 다.
예시
예 를 들 어 사용자 정 보 를 얻 는 함수 에서 저 희 는 사용자 정보 와 관련 된 log 를 인쇄 해 야 합 니 다.
var getUserInfo = function(){
    ajax( 'http:// xxx.com/userInfo', function( data ){
        console.log( 'userId: ' + data.userId );
        console.log( 'userName: ' + data.userName );
        console.log( 'nickName: ' + data.nickName );
    });
};
우 리 는 인쇄 log 의 문 구 를 독립 된 함수 에 밀봉 할 수 있다.
var getUserInfo = function(){
    ajax( 'http:// xxx.com/userInfo', function( data ){
        printDetails( data );
    });
};
var printDetails = function( data ){
    console.log( 'userId: ' + data.userId );
    console.log( 'userName: ' + data.userName );
    console.log( 'nickName: ' + data.nickName );
};
총결산
자 바스 크 립 트 함 수 를 더욱 우아 하 게 만 드 는 방법 에 관 한 이 글 은 여기까지 소개 되 었 습 니 다.자 바스 크 립 트 함수 의 우아 한 내용 에 대해 서 는 예전 의 글 을 검색 하거나 아래 의 관련 글 을 계속 찾 아 보 세 요.앞으로 많은 응원 부탁드립니다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Thymeleaf 의 일반 양식 제출 과 AJAX 제출텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.