Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>Check it using Number conversion:</p> <pre><code> !isNaN(Number([value])); // e.g. isNumber = !isNaN(Number('.3421')); //=&gt; true isNumber = !isNaN(Number('nonumber.3421')); //=&gt; false isNumber = !isNaN(Number('1500032')); //=&gt; true // you can also just use the conversion isNumber = Number('.3421'); //=&gt; 0.3421 isNumber = Number('nonumer.3421'); //=&gt; NaN if (!isNumber) { /*...*/ } // a hidden goodie: Number automatically trims the parameter isNumber = Number(' .3421 '); //=&gt; 0.3421 isNumber = Number(' .3421 \n'); //=&gt; 0.3421 </code></pre> <p>Applied to your function: </p> <pre><code>function isNumeric(prodFilterValue,thousandsDelim) { prodFilterValue = Number(prodFilterValue); return prodFilterValue ? (alert('yeah!'), prodFilterValue) : (alert('no sir'), false); } </code></pre> <p>Furthermore <code>isNaN([value])</code> applies an implicit Number conversion for <code>[value]</code>, so you can use that too.</p> <p>Keep in mind that <code>Number('')</code>, <code>Number(null)</code> or <code>Number('\t\n ')</code> all evaluate to 0 and <code>Number(true)</code> evaluates to 1. So, to be complete you'll have to do extra checks. Something like:</p> <pre><code>function isNumeric(prodFilterValue) { prodFilterValue = prodFilterValue &amp;&amp; /stri/i.test(typeof prodFilterValue) &amp;&amp; prodFilterValue.replace(/^\s+|\s+$/,'').length ? Number(prodFilterValue) : undefined; return prodFilterValue &amp;&amp; prodFilterValue !== 0 ? (alert('yeah!'), prodFilterValue) : (alert('no sir'), false); } </code></pre>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. VO
      singulars
      1. This table or related slice is empty.
    2. VO
      singulars
      1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload