coffeescript字典设置默认值

ogu*_*alb 4 python dictionary coffeescript

在Python中,如果你有一个包含像这样的列表的字典

   mydict = {'foo': [], 'bar':[3, 4]}
Run Code Online (Sandbox Code Playgroud)

如果你想在列表中添加一些内容,你可以做到

   mydict.setdefault('baz', []).append(5)
Run Code Online (Sandbox Code Playgroud)

不用写

key, list_element = 'baz', 5
if key in mydict:
    mydict[key].append(list_element)
else:
    mydict[key] = [list_element]
Run Code Online (Sandbox Code Playgroud)

Coffeescript中有相同的内容吗?

flo*_*low 8

我建议不要使用||/ or来测试会员资格 - 它基本上是一个聪明的技巧,会默默地对抗虚假值.我更喜欢写作

( mydict[ name ]?= [] ).push value
Run Code Online (Sandbox Code Playgroud)

我觉得更清楚; 它假设如果mydict没有条目name或该值是nullundefined,那么此时应该放置一个空列表.