随着flowtype
我们宁愿const
对let
我们可以在任何地方使用`const`而不是`let`吗?
我需要在最高效的方式进行工作的功能和它很适合我,它是比较两个数组,所以这是我的问题冷静例如:
/**
* @function compare
* @description function compares two arrays with ids to figure out: are they equal? (elements position can be different)
* @param arraFrom {Array}
* @param arraTo {Array}
* @param compareFunction {Function}
* @returns {Boolean}
*/
function compare(arraFrom, arraTo, compareFunction) {
let notEqual = true;
if(arraFrom.length !== arraTo.length) return false;
for (let i = 0; i < arraFrom.length; i++) {
notEqual = true;
for (let j = 0; j < arraTo.length; j++) {
if (compareFunction ?
compareFunction(arraFrom[i], arraTo[j]) :
arraFrom[i] === arraTo[j]) {
notEqual = false;
break;
}
}
if (notEqual) return false;
}
return true;
}
问题是:我们如何才能以最高效的方式使用let
?
谢谢!
停下来思考一下'const'的实际含义。它是*常数*的缩写。当你想改变它的值时,如何在你的代码中有一个*常量*变量(可能听起来会有些矛盾)? –
这个问题就像是一个“请重写我的代码”请求,隐藏在一个有趣的问题的幌子下。 – evolutionxbox
所有的'let'都可以用'const'替换,因为它们都改变了。 'const'用于常量变量,并且是只读的 –