我是js的新手,有时我很难习惯它的代码约定。所以我有一个问题,我应该如何声明函数表达式?看看我的代码,我是怎么做的,还是有更好的做法?
function onAddButtonClick() {
var engWord = document.getElementById('engWord'),
japWord = document.getElementById('japWord'),
engVal = engWord.value,
japVal = japWord.value,
engExpr = (engVal !== ""),
japExpr = (japVal !== ""),
duplicateNum,
checkImg,
numOfWords;
duplicateNum = (function () {
var i,
pair;
for (i = 0; i < dictionary.length; i++) {
pair = dictionary[i];
if (pair.eng === engVal && pair.jap === japVal) {
return 3;
} else if (pair.jap === japVal) {
return 2;
} else if (pair.eng === engVal) {
return 1;
}
}
return 0;
}());
//remove focus from inputs
engWord.blur();
japWord.blur();
...
}
提前致谢。
答案 0 :(得分:1)
你做得很好。在这种情况下,使用开头(
在语法上并不是必需的,但它会向代码的人类读者发出伟大的警告,告诉他们发生了什么。惯例有帮助。
最后,调用parens ()
可以进入结束)
内部或外部。 Doug Crawford建议内部和许多短裤检查。尽管他声称狗球 1,但这并不重要。
顺便说一下,声明函数表达式然后立即运行的想法称为IFFE
- Immediately Invoked Function Expression