为什么const被声明两次?

时间:2018-07-07 12:28:34

标签: javascript ecmascript-6

const realNumberArray = [4, 5.6, -9.8, 3.14, 42, 6, 8.34];  const squareList = (arr) => {
  "use strict";
  const squaredIntegers = arr.filter( (num) => num > 0 && num % parseInt(num) === 0 ).map( (num) => Math.pow(num, 2) );
  return squaredIntegers;
};

const squaredIntegers = squareList(realNumberArray); 
console.log(squaredIntegers);

1 个答案:

答案 0 :(得分:2)

因为一个constsquareList函数的局部变量,另一个const是一个持有squareList的全局变量。在不同范围内两次使用相同的变量名称为阴影,这有时很有用,但在这种情况下也会造成混淆。