> For the complete documentation index, see [llms.txt](https://lochiwei.gitbook.io/web/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://lochiwei.gitbook.io/web/js/val/prim/num/number+ext/isnumber.md).

# isNumber()

test if a value is a valid number.

[JS](/web/js.md) ⟩ [value](/web/js/val.md) ⟩ [primitive](/web/js/val/prim.md) ⟩ [number](/web/js/val/prim/num.md) ⟩ [functions](broken://pages/DTJOAKgK1E3m5zlnFz4G) ⟩ isNumber()

{% hint style="success" %}
determine if a value is a (valid) number, <mark style="color:yellow;">**equivalent**</mark> to [Number.isFinite(x)](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/isFinite).
{% endhint %}

{% tabs %}
{% tab title="💾 程式" %}

* replit： [isNumber()](https://replit.com/@pegasusroe/isNumber#helpers/isNumber.js)

```javascript
// ⭐️ is (valid) number?
function isNumber(value) {
    return Number.isFinite(value);
}

// export
module.exports = { isNumber };
```

💈範例：

```javascript
value  isNumber()?   Number.isFinite()?
---------------------------------------------
123       ✅         ✅                 
-2.5      ✅         ✅                 
Infinity  ❌         ❌                 
NaN       ❌         ❌                 
'123'     ❌         ❌                 
''        ❌         ❌         empty string
---------------------------------------------
```

{% endtab %}

{% tab title="👥 相關" %}

* :point\_right: [isPrimitive()](/web/js/val/type/type-functions/isprimitive.md) <mark style="color:yellow;">**/**</mark> [isObject()](/web/js/val/type/type-functions/isobject.md)
* :point\_right: [NaN](/web/js/val/prim/num/special/nan.md)
  {% endtab %}

{% tab title="📘 手冊" %}

* [isFinite()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/isFinite)
* [Number.isFinite()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/isFinite)  ⭐️
  {% endtab %}

{% tab title="🗣 討論" %}

* [How to write isNumber() in JavaScript? \[duplicate\]](https://stackoverflow.com/questions/20169217/how-to-write-isnumber-in-javascript)
* [Validate decimal numbers in JavaScript - IsNumeric()](https://stackoverflow.com/questions/18082/validate-decimal-numbers-in-javascript-isnumeric)
  {% endtab %}
  {% endtabs %}
