前端笔试面经
arguments 对象在严格/非严格模式下与形参的绑定关系差异
function func(a) {
console.log(a === arguments[0]);
a = 2;
console.log(a === arguments[0]);
};
func(1);
┌─────────────────┬─────────────────────┬─────────────────────┐
│ 特性 │ 非严格模式 │ 严格模式 │
├─────────────────┼─────────────────────┼─────────────────────┤
│ arguments[0] │ 与形参 a 共享内存地址 │ 与形参 a 完全独立 │
│ 和形参 a 的关系 │ 修改一个,另一个同步变 │ 修改互不影响 │
│ │ (双向绑定) │ (各自独立) │
└─────────────────┴─────────────────────┴─────────────────────┘实打实