Andrea Giammarchi wrote:
hacky but easy to solve reusing once a RegExp
var i = [1,2,3].some(function(v, i){
return v === 2 && this.test(i);
}, /\d+/) && RegExp['$&'];
My Perl 4 _homage_, blechh.
Thanks, this will help sell findIndex to TC39 :-P.
/be
alert(i); // 1
no extra loop, no global anything, just an extra object needed, the
RegExp, actually something you could create once in your closure and
recycle every time you need.
br
On Sun, Mar 3, 2013 at 2:33 PM, Brendan Eich <[email protected]
<mailto:[email protected]>> wrote:
Bjoern Hoehrmann wrote:
* David Bruant wrote:
I've found myself multiple times in a situation where I
needed the index
of the first element responding to some conditions. I
solved it the
following way:
var index;
array.some(function(e, i){
if(someCondition(e)){
index = i;
return false;
}
return true;
})
It's usually a bad idea to trigger side-effects from such
callbacks. The
proper solution here would be having a suitable method
available, like
var index = array.findIndex(someCondition);
as it is called in Haskell and C#.
Hi Bjoern, findIndex is indeed a missing Array generic. I'll see
if we can get it on the agenda for the next TC39 meeting (coming
up quickly, mid-March). Thanks,
/be
_______________________________________________
es-discuss mailing list
[email protected] <mailto:[email protected]>
https://mail.mozilla.org/listinfo/es-discuss
_______________________________________________
es-discuss mailing list
[email protected]
https://mail.mozilla.org/listinfo/es-discuss