JS文件不起作用
问题描述:
下面是我的JS文件中的代码:JS文件不起作用
function arrayContains(array, value){
return array.indexOf(value) > -1;
}
var possibleOptions = ["male", "female", "m", "f"];
var gender = prompt("What's your gender?","");
while(!arrayContains(possibleOptions, gender))
gender = prompt("Invalid input. What's your gender?");
var name = prompt("What's your name?","");
var greeting = (gender == "male" || gender == "m") ? "Sup dude." : "Sup girl.";
alert("Hello, " + name + "! " + greeting);
的错误,我得到:
Line: 5
char: 1
Object expected.
我无法弄清楚。
答
两个问题:
- 正如评论所说,W /使用cscript.exe脚本主机不支持,也不提示(),也没有警报()
- JScript中数组没有.IndexOf()方法
你必须推出自己的:
function arrayContains(array, value){
for (var i = 0, e = array.length; i < e; ++i) {
if (array[i] === value) {
return true;
}
}
return false;
}
function prompt(p) {
WScript.Stdout.Write(p + " > ");
return WScript.StdIn.ReadLine();
}
function alert(s) {
WScript.Echo(s);
}
var possibleOptions = ["male", "female", "m", "f"];
var gender = prompt("What's your gender?","");
while(!arrayContains(possibleOptions, gender))
gender = prompt("Invalid input. What's your gender?");
var name = prompt("What's your name?","");
var greeting = (gender == "male" || gender == "m") ? "Sup dude." : "Sup girl.";
alert("Hello, " + name + "! " + greeting);
输出(控制台):
cscript 26073853.js
What's your gender? > neuter
Invalid input. What's your gender? > male
What's your name? > tarzan
Hello, tarzan! Sup dude.
cscript 26073853.js
What's your gender? > female
What's your name? > jane
Hello, jane! Sup girl.
在'''之前加''''。我认为'''是你的问题 – 2014-09-27 10:49:50
['your code'](http://jsfiddle.net/6c1qbq5t/)运行良好 – mithunsatheesh 2014-09-27 10:51:32
该代码无误地运行:http://jsfiddle.net/cscr3bvu/ – Quentin 2014-09-27 10:52:12