扫码关注官方订阅号
var f = function g() { return 23; }; typeof g();// g is not defined 可是g不是在函数声明的时候定义了吗? 难道同时使用函数声明和函数表达式,函数表达式生成的变量名会覆盖函数声明的变量?
认证0级讲师
这个叫Named Function Expression
你给函数取的名字(本例中的g)是可以在函数体内使用的,可以方便你实现递归,然后这个名字还不会和别的变量名互相冲突。
g函数被你封印在了f函数里,在外界是访问不到的,你可以在f函数的内部去typeof g,像这样
var f = function g() { console.log(typeof g); return 23; };
哪本书这么写说可以这样的?
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
这个叫Named Function Expression
你给函数取的名字(本例中的g)是可以在函数体内使用的,可以方便你实现递归,然后这个名字还不会和别的变量名互相冲突。
g函数被你封印在了f函数里,在外界是访问不到的,你可以在f函数的内部去typeof g,像这样
哪本书这么写说可以这样的?