小程序
小游戏
企业微信
微信支付
扫描小程序码分享
在简易教程里app.js里面有userInfoReadyCallback函数,但并没有定义,这个函数是从哪来的啊
1 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
js是动态语言,弱类型语言,变量的类型在运行时才确定,且与上下文有关。
既然js变量的类型在运行时才确定,那么一些变量的属性(成员)是不是同样在运行时确定呢?
在开头设置空的object型变量acb,acb没有定义属性(成员)
那么通过console.log打印无中生有的acb.tiger属性应该报错才对,但结果如下图
对象变量acb并未定义tiger属性,却依然可以输出,且值为undefined
同理,app.js并没有定义userInfoReadyCallback属性,该属性是运行时联系联系代码上下文确定的确定的
我把app.js与index.js中的userInfoReadyCallback改为userback程序依然能正常运行,也说明了app.userInfoReadyCallback属性是运行时确定的,名字可以任意更改,这实际上就是个运行时临时确定的中间变量
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
js是动态语言,弱类型语言,变量的类型在运行时才确定,且与上下文有关。
既然js变量的类型在运行时才确定,那么一些变量的属性(成员)是不是同样在运行时确定呢?
在开头设置空的object型变量acb,acb没有定义属性(成员)
那么通过console.log打印无中生有的acb.tiger属性应该报错才对,但结果如下图
对象变量acb并未定义tiger属性,却依然可以输出,且值为undefined
同理,app.js并没有定义userInfoReadyCallback属性,该属性是运行时联系联系代码上下文确定的确定的
我把app.js与index.js中的userInfoReadyCallback改为userback程序依然能正常运行,也说明了app.userInfoReadyCallback属性是运行时确定的,名字可以任意更改,这实际上就是个运行时临时确定的中间变量