Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/394.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 提示不将值存储为字符串_Javascript_String_Prompt - Fatal编程技术网

Javascript 提示不将值存储为字符串

Javascript 提示不将值存储为字符串,javascript,string,prompt,Javascript,String,Prompt,我正在做一个练习,但我无法理解为什么我的提示符没有存储为字符串,因此无法与我的开关大小写进行比较 任何输入返回false: 函数getColor(选择){ 开关(选择){ 案例“红色”: 返回true; “绿色”案例: 返回true; “蓝色”案例: 返回true; 违约: return false;//返回false,因为用户选择了不可用的颜色 } } var colorname=prompt('您想要什么颜色?'); var isAvailable=getColor(colorname);

我正在做一个练习,但我无法理解为什么我的提示符没有存储为字符串,因此无法与我的开关大小写进行比较

任何输入返回false:

函数getColor(选择){
开关(选择){
案例“红色”:
返回true;
“绿色”案例:
返回true;
“蓝色”案例:
返回true;
违约:
return false;//返回false,因为用户选择了不可用的颜色
}
}
var colorname=prompt('您想要什么颜色?');
var isAvailable=getColor(colorname);
如果(getColor==true){
log('好消息!该颜色可用');
}否则{
log('很抱歉,该颜色不可用');

}
您将
getColor(colorname)
的结果存储在
isAvailable
变量中,以后不再使用该变量,而是再次比较函数名

将if从
if(getColor==true)
更改为
if(isAvailable)
if(isAvailable==true)

或其中一项:

if(getColor(colorname) === true)

if(getColor(colorname))
字符串是不可变的。您不能更改现有字符串,但可以将新字符串分配给同一个或另一个变量。您有
if(getColor==true)
。您的意思是让
if(isAvailable==true)
代替吗?