Underscore Arrow (_ => …) What Is This?

It’s just a lambda expression that uses _ instead of x for its parameter. _ is a valid identifier so it can be used as a parameter name.

As mentioned in the comments, it’s a convention among some developers to call it _ to indicate that it’s not actually used by the lambda expression, but it’s no more than that: a convention.

Note that this is not the same thing as a discard (introduced several years after this answer), which is a special variable for assigning values that aren’t going to be used and will instead be discarded. Unlike discarded values, _ parameters continue to exist in lambda scope; they just aren’t used anywhere in the lambda expression. And there can only be one _ in scope at a time.

Leave a Comment

Hata!: SQLSTATE[HY000] [1045] Access denied for user 'divattrend_liink'@'localhost' (using password: YES)