我相信我忽略了我正在做的事情。我试图玩弄对象并获得一些乐趣,但我遇到了这个奇怪的错误。我在 C++/C# 中使用过 OO。我创建了一个游戏环境对象,该对象将包含有关此游戏的所有信息。然后我创建了一个验证工具(对象),其中包含有效输入的正则表达式测试,我在其中调用并传入然后返回测试结果。使用这些对象,我创建了一个launch();函数,提示用户输入用户名并使用该工具进行验证。正是在这个电话中,我遇到了这个错误。考虑到这个错误,我不确定我在做的事情在 JS 中是否合法。launch();function launch() {  var userNameInput = prompt("Please enter your name:", "User Name");  if (gameEnv.player(userNameInput)) {    alert("Please enter only letters for a username.");    location.reload(true);  }}var gameEnv = {  playerName: "",  set player(input) {    if (validationTool.LetterValidator(input)) {      this.playerName = input;      return 1;    } else {      return 0;    }  },}var validationTool = {  letterOnlyValidation: /^[a-zA-Z^\s]+$/,  LetterValidator: function(input) {    return letterOnlyValidation.test(input);  },}
                    
                    
                2 回答
                            MMMHUHU
                            
                                
                            
                        
                        
                                                
                    TA贡献1834条经验 获得超8个赞
这里有几个问题:
set 语法绑定了一个对象属性,应该=用来赋值。
订单事项
var gameEnv = {
playerName: "",
set player(input) {
if (validationTool.LetterValidator(input)) {
this.playerName = input;
alert("player name set");
} else {
alert("Please enter only letters for a username.");
}
},
}
var validationTool = {
letterOnlyValidation: /^[a-zA-Z^\s]+$/,
LetterValidator: function(input) {
return this.letterOnlyValidation.test(input);
},
}
launch();
function launch() {
var userNameInput = prompt("Please enter your name:", "User Name");
gameEnv.player = userNameInput;
}
添加回答
举报
0/150
	提交
		取消
	