一，为了避免获取到无意中被篡改的 undefined，所以编程规范中会建议使用 void 0 来获取 undefined 值。</p> <p>在 ES5 之前的时候，undefined 是可以被赋值的。不过在现代浏览器中已经把 undefined 设置为 non-configurable,non-writable。不过因为它总归不是一个关键字，在函数和块级作用域依然能用 undefined 作为标识符声明变量并赋值。</p> <div class="language- extra-class"><pre class="language-text"><code>function fn(){
  