「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典イメージぴよ画像「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典

NaN

pointこの用語のポイント

point数字じゃないことを表す目印だよ

point「Not a Number」の略だよ

スポンサーリンク

簡単に書くよ

NaN(読:ナン)とは

「数字じゃないよ」を意味する用語
であり

「あのよ~。本当は、ここには数字が入ってくるはずだったんだけどよ~。入ってきた値が数字じゃないんだわ」なときに出てくる、数字じゃないことを表す目印
です。


image piyo

詳しく書くよ

サクっと一言で説明すると

数字じゃないことを表す目印

として使われるやつが「NaN」です。
日本語では「非数」と表現されたりします。

NaN

ちなみに「Not a Number(ノット・ア・ナンバー)」の略で「NaN」ね。
気が向いたら、覚えてあげてください。

NaN2

※「Not a Number」を何となく日本語にすると「数字じゃない」となります。[詳細]

NaN3



「NaN」という表現は、本当は数字であってほしい場面なのに数字じゃないやつが登場したときに使われます。
「1」とか「2」とかであってほしいのに「a」とかだった場合です。

例えば、そうですね。

以下の内容を書いたホームページファイルHTMLファイルを作ったとしましょう。

<script>
var value1 = "a";
var value2 = 10/value1;

alert(value2);
</script>


このファイルを、ホームページを見るときに使うソフトWebブラウザで表示すると、画面には「NaN」と表示されます。

NaN4

ポイントとなるのは

var value1 = "a";
var value2 = 10/value1;

alert(value2);


の3行です。

それぞれ

//「value1」という名前の箱に「a」という文字を入れる
var value1 = "a";

//「value2」という名前の箱に「10÷value1の中身(=10÷a)」の結果を入れる
var value2 = 10/value1;

//「value2」の中身を画面に表示する
alert(value2);


という処理をやっています。

これらの処理を一言でまとめると

「10÷a」の結果を画面に表示する

です。

さて、ここで ちょっと考えてみてください。
画面に表示するのは割り算の結果です。

ということは、数字のはずですよね?

ですが「10÷a」の結果は数字では ありません。
というか割り算として成立していません。
「10」という数字を「a」という文字で割ろうとしていますからね。
無茶をするにも程があります。

個人的には「そんな無茶をしたらエラーにしろよ!」と思うのですが、実際にはエラーにはなりません。

どうなるか?

なんか、よく分からないけど、とりあえず数字ではないみたい!

と表示されるのです。

この「なんか、よく分からないけど、とりあえず数字ではないみたい!」を意味する用語が「NaN」です。
数字であってほしいのに数字じゃなかったときに登場します。

イメージは「NULL」の友達ですね。

NULLは「何もないよ!」を表す目印です。
NaNは「数字じゃないよ!」を表す目印です。

どちらもコンピュータの世界(というかプログラミングの世界)において、特定の状態を表す目印として使われるやつです。


image piyo2

一言でまとめるよ

まぁ「NaN」って単語が出てきたら「(本当は数字じゃないとダメなんだけど)数字じゃないことを表す目印なんだな~」と お考えください。

一番上に戻るよ
スポンサーリンク
書籍画像027
書籍画像050

おまけ

■訳してみるよ

「NaN」は「Not a Number(ノット・ア・ナンバー)」の略です。
「not(ノット)」の意味は「~でない」です。
「a(ア)」は冠詞と呼ばれるやつです。
「1つの」とか、そんなニュアンスです。
「number(ナンバー)」の意味は「数」とか「数字」とか「番号」とかです。
何となく くっつけると

数字ではない

となります。




書籍画像
わわわ説明術コラム
宣伝だよ
「分かった!」と思わせる説明の技術 知識ゼロの相手にも伝わるようになる本
エンジニアのための生成AI入門 はじめての生成AIアプリ開発からエージェント開発まで
体系的に学ぶ 安全なWebアプリケーションの作り方 第2版 脆弱性が生まれる原理と対策の実践