为了账号安全,请及时绑定邮箱和手机立即绑定

对象属性赋值问题

对象属性赋值问题

扬帆大鱼 2019-02-04 17:27:18
var ninja={ chirp:function(n){    return n>1?ninja.chirp(n-1)+"-chirp":"chirp";}}var s={chirp:ninja.chirp};ninja={};s.chirp(3);上面这段代码会出错,因为ninja={};把对象清空了,找不到ninja.chirp了。所以会报错。可以用this来解决这个问题。可是不明白为什么属性名必须要一样呢?还有这个对象的属性作为另一个对象的属性,在实际的执行栈中是怎么存放的呢?是这样吗?
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 390 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信