I can't remember last time when I would need `isNullOrEmpty` -
Boolean('') and Boolean(null) evaluates to false. And `if (str)`
handles any case with consistent types.String.isNullOrEmpty = (a)=>(typeof a === 'string' || a === null) && !a; Anyway - native isNullOrWhiteSpace would be probably be useful only to reduce GC pressure, because it's easily polyfilled. String.isNullOrWhiteSpace = (a)=>a === null ? true : typeof a === 'string' && !a.trim(); 2015-07-29 13:27 GMT+02:00 Behrang Saeedzadeh <[email protected]>: > Another set of very handy functions that in Java are provided by libraries > such as Guava or Apache Commons and in C# are built in, are > `String.isNullOrEmpty(aStr)` and `String.IsNullOrWhiteSpace(aStr)`. > > Would be nice if they ES Strings had them too. > > On Tue, Jul 28, 2015 at 10:15 AM John-David Dalton > <[email protected]> wrote: >> >> In the wild I've seen ltrim rtrim which are variations of trimLeft and >> trimRight and padLeft padRight or lpad, rpad for other forms. For stings I >> think of left and right as leading and trailing and think of start and end >> as more position indicators of like slice or a range. >> >> >> -JDD >> >> On Mon, Jul 27, 2015 at 4:55 PM, Dmitry Soshnikov >> <[email protected]> wrote: >>> >>> OK, it was added to the agenda for the next meeting (will be presented by >>> Sebastian Markbage), so can be discussed in detail. I agree that "start", >>> and "end" are now probably better fit (because of i18n, and a strong >>> correlation with "startsWith" and "endsWith"). We can probably ignore the >>> de-facto shipped in browsers, they will just implement in addition >>> `trimStart` and `trimEnd`, and eventually deprecate the "right" and "left". >>> >>> Dmitry >>> >>> On Tue, Jul 21, 2015 at 12:02 AM, Claude Pache <[email protected]> >>> wrote: >>>> >>>> >>>> > Le 21 juil. 2015 à 08:28, Jordan Harband <[email protected]> a écrit : >>>> > >>>> > On the contrary -"left" always begins at index 0 - "start" is >>>> > sometimes index 0, sometimes index (length - 1). >>>> >>>> Counter-example: ES6 methods `String#startsWith` and `String#endsWith` >>>> are named correctly. >>>> >>>> > I think "left" and "right" are the right names; "start" and "end" >>>> > would require unicode bidirectional stuff. >>>> >>>> No, because characters in Unicode strings are ordered logically, not >>>> visually. >>>> >>>> —Claude >>>> >>>> _______________________________________________ >>>> es-discuss mailing list >>>> [email protected] >>>> https://mail.mozilla.org/listinfo/es-discuss >>> >>> >>> >>> _______________________________________________ >>> es-discuss mailing list >>> [email protected] >>> https://mail.mozilla.org/listinfo/es-discuss >>> >> >> _______________________________________________ >> es-discuss mailing list >> [email protected] >> https://mail.mozilla.org/listinfo/es-discuss > > -- > Best regards, > Behrang Saeedzadeh > > _______________________________________________ > es-discuss mailing list > [email protected] > https://mail.mozilla.org/listinfo/es-discuss > _______________________________________________ es-discuss mailing list [email protected] https://mail.mozilla.org/listinfo/es-discuss

