扫码关注官方订阅号
function a(){ var i=10; b=function(){return i++;}; return i; } console.log(a(),b(),a());// 10 10 10
尤其是为什么第三个还是10? i++怎么没起作用? 感谢
小伙看你根骨奇佳,潜力无限,来学PHP伐。
第一个a(),直接return i 为10;第二个b(),return i++,此时i的值是10,所以先return,再自增,输出10并且i为11;第三个a(),重新定义了i=10,所以return 为10。
作用域的问题,建议你去看下var定义
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
第一个a(),直接return i 为10;
第二个b(),return i++,此时i的值是10,所以先return,再自增,输出10并且i为11;
第三个a(),重新定义了i=10,所以return 为10。
作用域的问题,建议你去看下var定义