为什么很少看到人用 __proto__ 直接来实现面向对象?
为了证明这种方式是可以用的, 我尝试写了个模块:
https://github.com/jiyinyiyong/proto-scope
human = proto.as
init: -> @name = 'human race'
give_name: (@name) ->
introduce: -> console.log "this is #{@name}"
tom = human.new()
tom.introduce() # => "this is human race"
man = human.as
speak: ->
print 'speaks by', @name
dan = man.new()
dan.give_name 'Dan'
dan.introduce() # => "this is Dan"
dan.speak() # => "speaks by Dan"
从功能上说,
proto
是可行的, 在 Node 环境里也是正常能跑的,
但是为什么没人在实际使用当中这样用呢?
星辰的哀伤
11 years, 10 months ago
Answers
可以阅读下
@nightire
凡哥的博文 -
《理解 JavaScript(四)》
,里面详细介绍了
prototype
和
__proto__
以及原型继承等相关问题。
古日月土也覺
answered 11 years, 10 months ago