Javascript 无法添加到对象原型
我有一个对象文字:Javascript 无法添加到对象原型,javascript,Javascript,我有一个对象文字: var RPSPlayer = {....} 我想使用以下方法从该对象生成新的“子对象”: var player1 = new Player(randomPlay); 当我尝试向播放器原型添加函数时,如下所示: function Player(play) { this.prototype.play = play; return play; }; 我犯了一个错误 play是一个返回字符串的函数,Player函数将该字符串作为参数获取 问题在于: this
var RPSPlayer = {....}
我想使用以下方法从该对象生成新的“子对象”:
var player1 = new Player(randomPlay);
当我尝试向播放器
原型添加函数时,如下所示:
function Player(play) {
this.prototype.play = play;
return play;
};
我犯了一个错误
play
是一个返回字符串的函数,Player函数将该字符串作为参数获取
问题在于:
this.prototype.play = play;
它应该是简单的:
function Player(play) {
this.play = play;
}
Player.prototype = RPSPlayer;
var RPSPlayer={….}
我想使用以下方法从该对象生成新的“子对象”:
var player1 = new Player(randomPlay);
var child=Object.create(RPSPlayer)代码>
但当我试图通过使用以下原型为播放器添加功能时:
RPSPlayer.play=function(){…}
它起作用了
认真地说,使用Object.create
来创建实例,并区分实例的自身属性和属于原型的属性
如果希望实例具有自己的属性,请对其进行写入
child.play=function(){…}
最好说出错误是什么。@DᴀᴠᴇNᴇᴡᴛᴏɴ错误显然是“无法将属性播放设置为未定义”@Raynos yes。然而,海报应该说明他们犯了什么错误。我们从RPSPlayer开始。。。然后进入玩家???