You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

JavaScript对象引用返回undefined,石头剪刀布游戏代码问题咨询

问题原因

你写的object.userval是在直接访问对象里名为userval的属性,但你的对象里根本没有这个键——JavaScript会把点后面的内容直接当成属性名的字符串,而不是读取变量userval的值。对象里只有R、P、S三个键,找不到userval对应的属性,所以输出undefined。

解决方法

要根据变量的值去匹配对象的键,得用方括号语法,把变量放在方括号里,这样JavaScript会先读取变量的内容,再去对象里找对应键的值:

let userval = prompt("enter R,P,S");
const object={
  R : "ROCK",
  P : "PAPER",
  S : "SCISSOR"
};
console.log(object[userval])

这样用户输入R时,就会输出ROCK,输入P输出PAPER,输入S输出SCISSOR。

额外小建议:如果用户不小心输入了小写字母(比如r),代码会找不到对应属性,你可以把输入转成大写,提升容错性:

let userval = prompt("enter R,P,S").toUpperCase();
const object={
  R : "ROCK",
  P : "PAPER",
  S : "SCISSOR"
};
console.log(object[userval])

内容的提问来源于stack exchange,提问作者seth rolling

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.24 06:15:03