Syntax 关联数组的键指定失败,带-号且不带双引号
这是一个bug还是在使用-符号时作为键传递的字符串被视为表达式?手册上说双引号是可选的Syntax 关联数组的键指定失败,带-号且不带双引号,syntax,autohotkey,Syntax,Autohotkey,这是一个bug还是在使用-符号时作为键传递的字符串被视为表达式?手册上说双引号是可选的 这是导致错误的无效原因。所以现在它有意义了 for k, v in {font-weight : "bold"} msgbox %k% : %v% ; : bold for k, v in {"font-weight" : "bold"} msgbox %k% : %v% ; font-weight : bold 结果: 行文本:字体值:=“粗体”错误:此行不包含 公认的行动
这是导致错误的无效原因。所以现在它有意义了
for k, v in {font-weight : "bold"}
msgbox %k% : %v% ; : bold
for k, v in {"font-weight" : "bold"}
msgbox %k% : %v% ; font-weight : bold
结果:
行文本:字体值:=“粗体”错误:此行不包含
公认的行动
其他注意事项:
font-value := "bold"
msgbox % font-value
与答案类似,减号是保留的。当使用任何其他操作符时,快捷方式也不起作用。它不是bug的原因是它允许在为对象命名键时使用数学、字符串操作、函数等。它可能是设计缺陷,也可能不是设计缺陷,但它按照开发人员的预期工作
发件人:
引号是键的可选
仅由单词字符组成。任何表达式都可以用作
一个键,但要将变量用作键,它必须包含在
圆括号。例如,{(KeyVar):Value}
和{GetKey():Value}
都是有效的
(增加重点)
单词字符通常表示字母、数字和下划线
for k, v in {font*weight : "bold"}
msgbox %k% : %v% ; : bold
for k, v in {10*2 : "10*2"}
msgbox %k% : %v% ; 20 : 10*2
for k, v in { 0xeeeee : "0xeeeee"}
msgbox %k% : %v% ; 978670: