Map#get needs a default value param?
David Bruant
bruant.d at gmail.com
Tue Jun 12 09:07:44 PDT 2012
Le 12/06/2012 18:02, Tab Atkins Jr. a écrit :
> On Tue, Jun 12, 2012 at 7:36 AM, David Bruant<bruant.d at gmail.com> wrote:
>> Le 12/06/2012 16:19, Hemanth H.M a écrit :
>>
>> Would it be useful to have something like sum[value] = sum.get(value, 0) + 1
>>
>> You can always do
>>
>> sum[value] = (sum.get(value) || 0) + 1;
>>
>> I think it's simple enough to justify not having an additional (and
>> potentially confusing) argument, but I'm open to debate.
> The default argument in python's Dict.get doesn't seem confusing, and
> I've used it plenty. (I've also used the more specialized Dict
> variants that obviate it - Counter and DefaultDict.)
"sum.get(value) || 0" leaves no ambiguity (assuming you know JavaScript
and falsy values) as to when the value is 0, while for "sum.get(value,
0)", the implicit part is in the semantics of the function for which you
need to look at the spec, that's what I find more confusing. YMMV.
David
More information about the es-discuss
mailing list