其实在这个语句运行的过程中做了这样几件事情:
var s = new Object("1");
s.toString();
s = null;
- 第一步: 创建Object类实例。注意为什么不是String ? 由于Symbol和BigInt的出现,对它们调用new都会报错,目前ES6规范也不建议用new来创建基本类型的包装类。
- 第二步: 调用实例方法。
- 第三步: 执行完方法立即销毁这个实例。
整个过程体现了 基本包装类型
的性质,而基本包装类型恰恰属于基本数据类型,包括Boolean, Number和String。