如何在javascript中使用Or运算符
我试图使用if语句和or | |运算符来测试房间类型的选择框选项的值是否为single King、single Double Queen或single two twins,然后执行一些代码。我一直在if语句中| |运算符所在的位置收到消息“uncaught syntax error unidentified token | |”如何在javascript中使用Or运算符,javascript,logical-operators,Javascript,Logical Operators,我试图使用if语句和or | |运算符来测试房间类型的选择框选项的值是否为single King、single Double Queen或single two twins,然后执行一些代码。我一直在if语句中| |运算符所在的位置收到消息“uncaught syntax error unidentified token | |” var酒店={ 名称:“本森酒店”, 房间:500间, jsuites:10, 地点:10, 预订:100, checkAvailability:function()
var酒店={
名称:“本森酒店”,
房间:500间,
jsuites:10,
地点:10,
预订:100,
checkAvailability:function(){
归还此.rooms-此.booked;
}
};
hotel.name=“Bonton”;
var elName=document.getElementById(“hotelN”);
elName.textContent=hotel.name;
函数签入(){
var nRooms=document.getElementById(“numRooms”).value*1;
var tRoom=document.getElementById(“打印室”);
if(tRoom.value=“singleK”)| |(tRoom.value=“singleQ”)| | |(tRoom.value=“singleT”){/*我在控制台中收到关于上述代码行的以下消息。“未捕获语法错误未识别标记| | |”显然,上面带有| |运算符的if语句不正确//
hotel.booked=numRooms+hotel.booked;
if hotel.checkAvailability()<0{
var rAvail=nRooms+(hotel.checkAvailability());
如果肆虐
预订房间
房间数量:
房间类型:
单人大床
单人大床
一对双胞胎
初级一居室套房
高级双卧室套房
入住率:
一个成年人
两个成年人
一名成人和一名儿童
入住日期:
退房日期:
提交
酒店客房供应情况
并于7月份结账
jjj
您只需添加一对括号:
if ((tRoom.value == "singleK")||(tRoom.value =="singleQ")||(tRoom.value == "singleT")){
...
}
或
if
语句的整个条件部分必须用括号括起来。通过执行if(condition1)| |(condition2)
,您将在| |
之前终止条件
而是这样的:
if((条件1)|(条件2))
另外:您要查找的条件运算符是=
,而不是=
,=
用于比较两个值,而=
用于设置
在|
if (tRoom.value = "singleK" || tRoom.value ="singleQ" || tRoom.value = "singleT") {
该行中至少有两个问题:
if((tRoom.value=“singleK”)| |…){
==
进行比较。=
用于分配if hotel.checkAvailability()<0
-在您的实际代码或粘贴错误中?所有条件都需要用括号括起来。上也有一个错误,如果将=
更改为==
,您不需要将每个条件都括在一组括号中。您可以将整个条件括在一组中。@zfrisch您是对的,他不需要它们。正如@4castle所指出的那样值得注意的是,如果tRoom.value中唯一有效的类型是字符串,那么在进行条件检查时,应该使用===来比较该类型以及value@zfrisch在这个实例中是允许的(因为值属性总是返回一个字符串),但是是的,这是最佳实践。
if (tRoom.value = "singleK")||(tRoom.value ="singleQ")||(tRoom.value = "singleT") {
if (tRoom.value = "singleK" || tRoom.value ="singleQ" || tRoom.value = "singleT") {