输出4行结果
如图 为什么不把teacher.add('xxx')删除,命令行中就会输出四行结果? 在index.js中不是仅仅调用了klass.add方法吗?为什么teacher.add方法也被调用了一次?
如图 为什么不把teacher.add('xxx')删除,命令行中就会输出四行结果? 在index.js中不是仅仅调用了klass.add方法吗?为什么teacher.add方法也被调用了一次?
2018-08-09
正常来说一个js文件会 先 解析 后 执行
既然要加载一个文件的模块,那肯定要把那个文件从头到尾解析一遍,解析的时候遇到 teacher.add('xxx') ,执行是按照解析来执行的,所以 teacher.add('xxx') 会被执行。
在index.js文件中导入klass.js文件中的add方法能执行,证明
klass.js中:exports.add=add ;这句被执行了
在klass.js文件中导入teacher.js文件和student.js文件中的add方法能执行,证明
var student=require('./student.js');
var teacher=require('./teacher.js'); 这两句话被执行了
假如有个example.js文件,内容如下:
第1句代码
第2句代码
第3句代码
第4句代码
第5句代码
其中第1、2句执行了,第5句执行了,就算计算机自己工作累了,也不至于跳过第3、4句不执行吧?
举报