js定义的静态变量定义在那个属性上__proto__,prototype还是其他对象上
function test(){
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
function test(){
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(6)
肯定不是prototype,用prototype的话,t2.cry就有了
js中,类的静态属性,是用prototype的。你直接写test.cry,与类就没关系了,否则不至于实例对象会找不到。
for (var p in t2) alert(p+":"+t2[p]);只会显示出say和sayHello,say是共有的,也即静态属性,sayHello是私有的。
test.cry=function() {....} 是新创建了一个function,名字是test.cry而已,也可以认为是创建了一个新类,test.cry,js中,function可以认为是一个类,这个时候,它和原来的test类已经没啥关系了。
静态变量是这样定义的,
test.cry = function(){
alert("呜呜");
你要静态的话,那你
t1和t2的cry就都指向同一个function了