我很惊讶地看到this answer遇到了挑战,因为我不知道这种语法是合法的。即,看起来像这样的部分(我简化了一点):
"eo"[0,g=()=>{},g(),g(),1]
对我来说,这看起来像是用于访问对象键的数组文字。这是JavaScript中记录的行为吗?对于记录,看起来数组的最后一个值是被解除引用的。
答案 0 :(得分:1)
使用comma operator作为字符串的access,基本上会返回o
,并在其间做一些事情。
部分内容:
"eo" string
[ bracket operator/string accessor
0, value 0
g=()=>{}, generating an empty function
g(), call that function
g(), call that function again
1 take 1 as the last element of comma operator
] return 'o'