嘿大家,在许多编程语言中都有这个很好的习惯用法,可以让你用哈希来计算项目的出现次数。例如在Perl中,假设你有一个学生列表,你想看看你有多少名字(2个Bobs,1个Jeremy,22个Aidans等):
my %uniqueNames;
for (@studentNames){ $uniqueNames{$_}++; }
# print it out
for (keys %uniqueNames){ print "$_ : $uniqueNames{$_}\n"; }
因此,您可以使用Object。
在ActionScript 3中执行此操作问题是NaN。如果你试图同时自动创建并自动增加一个密钥,你会得到NaN,整个事情都会崩溃。
当然,您可以使用条件来测试密钥是否存在,然后自动增加密钥,或者如果没有则将其设置为1,但这很难看。
studentNames[name] = studentNames[name] ? studentNames[name] + 1 : 1; // shudder
AS3的正确用法是什么?有成语吗?你是个成语。 - T
答案 0 :(得分:3)
你的回答是正确的,但你可以用更短的方式做同样的事情:
studentNames[name] = (studentNames[name] || 0) + 1;
答案 1 :(得分:0)
这里没有什么不对的...继续前进,成语。说真的,你做的很好。