![]() |
1
3
如果我尝试babel输出,我可以给x赋一个新值,它就工作了。原因是,输出的代码是ECMAScript 5,没有常量的概念。您可以通过在 'JavaScript Demo: Statement - Const' example on MDN 因此,babel将编译(或“transfile”)它作为一个可赋值变量,因为没有其他方法。但在这个过程中,它会验证您的原始代码,看看您是否没有对x进行赋值,如果您这样做了,它会抛出一个错误。
作为比较,这同样适用于任何编译器。如果使用十六进制编辑器修改可执行文件,还可以中断编译器在生成可执行文件时所做的任何操作。事实上,如果你在程序完成后修改它(想想图像,文档,…),每个程序的输出都是如此 |
![]() |
2
0
你说得对。var通常是可编辑的。我相信您在编写过程中会遇到这个问题。在babel编译期间,它会对const变量进行安全检查。同样的事情也发生在typescript中。 |
![]() |
GulgDev · 为什么不将属性设置为无效值? 10 月前 |
![]() |
Monnt · 如何查看数组是否包括具有特定值的嵌套数组? 12 月前 |
![]() |
JsCoder · 用ECDSA对C语言中的数据进行加密# 1 年前 |
![]() |
dsi · 排序功能可实现多列的自定义差异 1 年前 |
![]() |
Joseph · 仅在React和JS中生成深色 1 年前 |
![]() |
Joseph · 在Javascript中检索一些文本 1 年前 |