在javascript中使用常量和函数有什么区别?

在javascript中使用常量和函数有什么区别?,javascript,function,Javascript,Function,这两种功能之间有什么区别 const square = (number) => { return number * number; }; function square (number) { return number * number; } 有几个 首先,const阻止重新分配名称square,而函数不允许。其次,使用arrow函数没有自己的词法上下文,因此它没有作用域this,也不能用作构造函数。作为参考 注意:您还可以执行以下操作: const square = fu

这两种功能之间有什么区别

const square = (number) => {
  return number * number;
};

function square (number) {
  return number * number;
}
有几个

首先,const阻止重新分配名称
square
,而函数不允许。其次,使用arrow函数没有自己的词法上下文,因此它没有作用域
this
,也不能用作构造函数。作为参考

注意:您还可以执行以下操作:

  const square = function(num) { return num * num }

这既可以防止重新分配,又可以创建词汇上下文

如果您将函数声明为const,您的函数将永远不会被具有相同函数名的其他js文件覆盖。无论是什么情况,定义都将保持完全相同。箭头函数创建一个新的作用域,否则
()=>{var a=8}
中的
var将在箭头函数之外访问。对不起,这是指词汇上下文,而不是作用域。修正了@t.nieswe你说的词汇上下文是什么意思?@michelle