【发布时间】:2016-04-29 13:49:14
【问题描述】:
这是我的代码:
//Player Loadout
//Version 1.0 by Madi Magdy
function Player(name,sex,side) {
this.name = name;
this.sex = sex;
this.side = side;
}
//var newPlayer = new Player(prompt("Please enter your name"),prompt("Please enter your sex"),prompt("Please enter your nationality"));
//console.log("Hello " + newPlayer.name + "!");
function Class(classType,mainWeapon,sideWeapon) {
this.classType = classType;
this.mainWeapon = mainWeapon;
this.sideWeapon = sideWeapon;
}
assaultClass = new Class("Assault","M416","M9");
engineerClass = new Class("Engineer","AK5C","P226");
reconClass = new Class("Recon","SRR61","Deagle44");
supportClass = new Class("Support","M249","M1911");
classChooser = function(playerChoice) {
if (playerChoice === assaultClass.classType) {
console.log("You chose the " + assaultClass.classType + " " + "class! Your default weapons are " + assaultClass.mainWeapon + " " + "and " + assaultClass.sideWeapon);
}
else if (playerChoice === engineerClass.classType) {
console.log("You chose the " + engineerClass.classType + " " + "class! Your default weapons are " + engineerClass.mainWeapon + " " + "and " + engineerClass.sideWeapon);
}
else if (playerChoice === reconClass.classType) {
console.log("You chose the " + reconClass.classType + " " + "class! Your default weapons are " + reconClass.mainWeapon + " " + "and " + reconClass.sideWeapon);
}
else if (playerChoice === supportClass.classType) {
console.log("You chose the " + supportClass.classType + " " + "class! Your default weapons are " + supportClass.mainWeapon + " " + "and " + supportClass.sideWeapon);
}
};
classChooser(prompt("Please choose your class! Type in Assault or Engineer or Recon or Support!"));
classWeapons = function(weapon,attach,camo) {
this.weapon = weapon;
this.attach = attach;
this.camo = camo;
};
yourClassWeapons = new classWeapons(prompt("Choose your weapon"),prompt("Choose your weapon attachment"),prompt("Choose your camouflage color"));
var classChosen = function(yourChosenClass) {
if (yourChosenClass === assaultClass.classType) {
console.log("Your weapons are listed as follows");
console.log(yourClassWeapons);
}
else {
console.log("NOPE");
}
};
classChosen(classChooser()); //I also tried classChosen(classChooser);
我在提示时输入字符串“Assault”,当我尝试将 classChooser 函数作为参数传递给我的 classChosen 函数时,if 之后的语句永远不会执行,但 else 会执行。我有什么错误?
【问题讨论】:
-
classChooser不保存任何内容。我认为您应该保存prompt("Please choose your class!...中的值,然后将其传递给classChosen。 -
我该怎么做?
标签: javascript function object parameters