Javascript 如何使用使用object属性的if语句,然后替换object属性?

Javascript 如何使用使用object属性的if语句,然后替换object属性?,javascript,Javascript,我想基于对象pest的state属性创建一系列if语句,然后用一个新状态替换它。我该怎么做 <body> <img style="vertical-align:middle" id="pet" src="https://i.imgsafe.org/f726448be6.png"> <table> <tr> <th><button id="feed" onclick="buttonFeed"> Feed </but

我想基于对象pest的state属性创建一系列if语句,然后用一个新状态替换它。我该怎么做

<body>

<img style="vertical-align:middle" id="pet" src="https://i.imgsafe.org/f726448be6.png">
<table>
<tr>
  <th><button id="feed" onclick="buttonFeed"> Feed </button></th>
  <th><button id="10pm" onclick="buttonLate"> 10pm </button></th>
  <th><button id="play" onclick="buttonPlay"> Play </button></th>
  <th><button id="pet" onclick="buttonPet"> Pet </button></th>
  <th><button id="cuddle" onclick="buttonCuddle"> Cuddle </button></th>
</tr>
</table>

是的,这是可能的。我还将使用===以防万一,因为这样可以确保类型相同…即。您正在将字符串与字符串进行比较。您还需要执行pest.state,而不是pest[state]

因此,答案在所选答案中是实际的:

在JS中创建对象时,应按以下方式进行:

var pest = {state: "Happy", type: "dog"};
要访问对象中的属性,请执行以下操作:

pest.state; pest.type;
if (pest.state === "Happy" || pest.state === "Relaxed")
检查if语句中的多个值时,请使用以下命令:

pest.state; pest.type;
if (pest.state === "Happy" || pest.state === "Relaxed")
在引用Javascript的html中进行的函数调用也需要括号:

Onclick="buttonFeed()"

是的,假设object是在该函数的某个地方定义的,或者是作为该函数的一个参数定义的。意思是说pest是定义的,而不是object*我撒谎了。如果您的对象看起来像这样:pest={state:Happy},那么为了获得pest中state属性的实际值,您需要执行pest.state,而不是pest[state]var pest={type:dog,state:Happy}出于某种原因,按钮函数不起作用,有什么想法吗?你需要使用pest.state===Happy | | pest.state===released,第二个条件也是一样的,否则这就行了。你的代码现在做什么?您是否尝试在调试器中遍历代码以查看它的具体功能?