为什么不能使用全局变量来在函数间传递函数和结果,大神求解答,
12条回答 默认 最新
- threenewbee 2017-04-21 00:37关注
可以这么做,但是这是不好的习惯。有几个原因:
全局变量只有一个,如果你的函数存在递归调用,那么将导致程序错误。
同样的原因,全局变量导致多线程的程序无法并发执行。
使用全局变量使得函数存在副作用(调用一个函数,对函数以外的数据/状态的改变,称之为副作用),这使得对函数调用顺序敏感的代码结果变得不可预测。降低代码的可读性。
依赖全局变量的函数,没办法单独提取出来,在另一个项目中不加更改的重复使用。
使用全局变量的函数,它很难单独地测试。本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 9无用