var logic = {
Rock: { w:"Scissors", l:"Paper"},
Paper: {w:"Rock", l:"Scissors"},
Scissors: {w:"Paper", l:"Rock"},
};它的用途如下:
logic[playChoice].w === rndChoice它是在JS岩石剪刀的例子中发现的,奇怪的是什么叫逻辑。
如果这地方不对请告诉我..。
发布于 2019-12-09 23:31:41
如果您询问在名为logic的变量中使用的确切的javascript结构,则存储数据,即通过对象文本创建的嵌套* object。
(https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Object_initializer)
*:意思是,存储在对象中的值也是对象本身。
如果您对更一般的答案感到好奇,那么为键分配值的东西通常被称为maps。(当这些值是从零开始的连续数字时,我们实际上得到了一个array。)
我强烈建议你阅读这篇文章,以便更好地理解:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Working_with_Objects
发布于 2019-12-09 23:37:27
给予:
var logic = {
Rock: { w:"Scissors", l:"Paper"},
Paper: {w:"Rock", l:"Scissors"},
Scissors: {w:"Paper", l:"Rock"},
};
logic[playChoice].w === rndChoicelogic是一个对象。只是一个具有属性Rock、Paper和Scissors的常规对象。这些属性中的每一个都是对象,每个属性都具有win属性(w)和丢失属性(l)。这些属性被设置为每个可用输入的字符串值。
比较(===)使用两个以前未定义的变量,即由播放机提供的playChoice和由计算机提供的rndChoice。如果w属性中playChoice中的对象的rndChoice属性等于rndChoice,则比较为真,并且玩家赢得了这一轮。
例如:
我们玩Rock
Scissors
logic["Rock"]的w属性,或者"Scissors"
。
发布于 2019-12-09 23:36:13
这里的逻辑是用给定的键访问对象“逻辑”的属性。
这里的对象“逻辑”是一个嵌套的对象,其中键本身也是对象。
如果是playChoice === Rock,那么我们将从逻辑对象访问Rock对象,并从Rock获取"w“属性。
https://stackoverflow.com/questions/59258050
复制相似问题