49 lines
847 B
JavaScript
49 lines
847 B
JavaScript
"use strict"
|
||
|
||
// 1. 没有声明的变量不能使用
|
||
// a = 10;
|
||
// console.log(a);
|
||
|
||
// 2. 删除变量和不存在的属性会报错
|
||
|
||
// var i = 10;
|
||
// delete i;
|
||
|
||
// delete Object.prototype;
|
||
|
||
// 3. 函数中相同的形参名会报错
|
||
|
||
// function test(a, a){
|
||
|
||
// }
|
||
|
||
// 4. 对象不能有重名的属性(根据 MDN 的说法ES6已经不存在此问题,有一个 bug 的提案)
|
||
|
||
// var o = {
|
||
// p: 1,
|
||
// p: 2
|
||
// };
|
||
// console.log(o.p);
|
||
|
||
// 5. 八进制
|
||
// 以前可以使用 0作为八进制的前缀
|
||
// var i = 010;
|
||
// console.log(i);
|
||
|
||
|
||
// 6. 函数中的 this 为 undefined
|
||
// function test(){
|
||
// console.log(this);
|
||
// }
|
||
// test();
|
||
|
||
// 7. eval 作用域
|
||
|
||
// var x = 2;
|
||
// console.info(eval("var x = 5; x")); // 5
|
||
// console.info(x); // 2
|
||
|
||
// 8. 不能使用保留字作为标识符
|
||
|
||
var public = "hello world";
|
||
console.log(public); |