Javascript ES6 Const 可以在不允许时更改

标签 javascript

我正在玩一些 ES6,我们知道 const 值不能更改/重新分配。 既然如此,为什么允许更改?

{
   const name = 'unchangable';
   sayName = (name) => {
     console.log(name);
   }

}

sayName('changed');

最佳答案

它没有改变,您只是打印传递给函数的值,而不是 const name

例子:

{
   const name = 'unchangable';
   sayName = (newName) => {
     name = newName; // This will make an error
   }

}

sayName('New Name')

你的代码等于代码吹的地方

{
   const name = 'unchangable';
   sayName = (someName) => { 
     // There is  no relationship between `someName` and the const `name`
     console.log(someName); 
   }

}

sayName('New Name');

关于Javascript ES6 Const 可以在不允许时更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43276948/

相关文章:

javascript - 通过 jQuery 从 jSTL 文本字段获取值

javascript - 在 ng-repeat 中进行验证的表单

javascript - Mini DB - 从 HTML 表单按钮动态更新 excel 文件 - JavaScript/HTML/Jquery

javascript - 将特定属性添加到 div 中的 anchor 标记

javascript - 如果我点击它之外的任何地方,我想让我的 div 隐藏,我如何在 jQuery 中做到这一点?这个 SO 解决方案让我感到困惑

javascript - Firefox 错误,拖动事件给 dataTransfer.files = null,在所有其他浏览器中定义

javascript - 向下滑动div的 "height:auto"技巧是什么

javascript - 无法将我的纬度或经度附加到 html 文档?

javascript - 根据内容的高度调整 iFrame 的大小只能放大?

javascript - 从“选择文件”窗口选择文件并关闭后如何调用 JavaScript 函数?