# js面试题
# Common.js 和 es6 module 区别
- commonJs 是被加载的时候运行,esModule 是编译的时候运行
- commonJs 输出的是值的浅拷贝,esModule 输出值的引用
- webpack 中的 webpack_require 对他们处理方式不同
- webpack 的按需加载实现
# 形参和实参
function test(a){
a=a+10;
}
var a=10;
test(a);
console.log(a);
//10
function test(s){
a=s+10;
}
var a=10;
test(a);
console.log(a);
function test(s){
console.log(s)//undefind
a=s+10;
}
test(a);
var a=10;
console.log(a);//10
形参名和实参名一样,那第一个例子a就不能修改外面的全局a;而第三个例子因为变量提升的原因,test(a)中的a其实是undefined,所以最终全局a是10