变量名 变量命名必须准确,不能无意义 var yyyymmdd; // No var yearMonthDay // Yes 对于值不会改变的常量使用const关键字变量命名不能废话 getUserInfo() // No getUser() // Yes 都是获取用户,下面的更加简洁 尽量使每个变量名有意义,名称可以检索 const total = 55 + 20 // No 55是什么?20又是什么? const cats = 55; const dogs = 20; const total = cats + dogs; // Yes 语句 语句不宜过长,长语句尽量拆分,提取重复部分 changeMessageState(messageList[0].message, messageList[0].state) // No const messageObj = messageList[0]; const message = messageObj.message; const state = messageObj.state; changMessageState(message, state); // Yes 使用短路语句 function getAnswer(question) { if(question) { return handleQuestion(question) }else { return "no answer" } } // No function getAnswer(question) { return question ? handleQuestion(question) : "no answer" } 函数 使用两个或少于两个的参数 function createArticle(title, keyWords, summary, text) // No var article = { title: 'English', keyWords: 'language', summary: 'this language is popular', text: 'English is the most popular language in the world' } function createArticle(article) // Yes 函数名说明要做的事 function catsAdd() { return cats + dogs; } // No function catsAddDogs() { return cats + dogs; } // Yes 拆分复杂的函数