我需要创建一个具有setter和getter方法的私有变量的javascript函数。我想:作为一个对象在javascript中的属性的方法
function createSecretHolder(secret) {
this._secret = secret;
var getSecret = function(){
return this._secret;
}
var setSecret = function(secret){
this._secret = secret;
}
}
,并与一个版本:
this.getSecret = function()...
和
this.seSecret = function()...
它没有通过测试套件的代码战争。像
var obj = createSecretHolder(secret);
obj.getSecret();
obj.setSecret(newSecret);
和其他隐藏。我得到一个错误类型错误:无法读取的未定义的属性“getSecret”,另一个不能调用方法setSecret
而且'secret'不是一个字符串,可能,没有定义:) – Cheery 2014-10-18 03:46:09
@Trott我只能假设返回secr的价值等getSecret被调用,那么我可以从createSecretHolder返回什么,以及添加get和set方法到对象的正确方法,以便它们可以在函数之外访问? – user137717 2014-10-18 03:46:14
@Cheery秘密传入像var obj = createSecretHolder(6);或var obj = createSecretHolder(“ILikePizza”);我不明白你的意思,它不是一个字符串,可能是undefined – user137717 2014-10-18 03:49:13