如何让这个JavaScript程序根据提示符的输入向对象属性发出警报?

如何让这个JavaScript程序根据提示符的输入向对象属性发出警报?,javascript,object,properties,alert,prompt,Javascript,Object,Properties,Alert,Prompt,我试图让程序在用户输入州名缩写时提醒首都。当程序提示用户输入缩写时,如果用户输入我,程序应提醒Augusta。我知道我需要在某处添加一个toUpperCase,但我现在不担心这个。现在程序只是警告未定义。我认为,通过使用“input”作为提示的var,可以使我在某种程度上成为警报的通用程序,而不必为每种可能性创建特定警报。我怎样才能解决这个问题 var capitals = { ME: "Augusta", NH: "Concord",

我试图让程序在用户输入州名缩写时提醒首都。当程序提示用户输入缩写时,如果用户输入我,程序应提醒Augusta。我知道我需要在某处添加一个toUpperCase,但我现在不担心这个。现在程序只是警告未定义。我认为,通过使用“input”作为提示的var,可以使我在某种程度上成为警报的通用程序,而不必为每种可能性创建特定警报。我怎样才能解决这个问题

    var capitals = {
        ME: "Augusta", 
        NH: "Concord", 
        VT: "Montpelier", 
        MA: "Boston", 
        CT: "Hartford", 
        RI: "Providence"
    };

    var input = prompt("Enter the postal abbreviation for a New England state:");

    alert(capitals.input);

您需要执行
大写字母[输入]
。您正在检查实际的
input
属性和您的用法,这当然是未定义的。要使用变量访问对象的属性,请始终使用[]表示法。

顺便说一句,括号表示法也是如何获取和设置具有古怪名称的属性,如“!哇(尽管除非你有充分的理由,否则这通常是不好的做法)。