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

非数

pointこの用語のポイント

pointNaNのことだよ

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

スポンサーリンク

簡単に書くよ

非数(読:ヒスウ 英:Not a Number)とは

「NaN」のこと。
用語の中身としては

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

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


image piyo

詳しく書くよ

最初に留意事項です。
NaN(ナン)」と言われて「あぁ、アレのことね」と分かる方は最後まで読む必要ありません。
NaNを(無理やり?)日本語にした表現が「非数」です。

非数

「NaNって何?美味しいの?」な人は、このまま読み進めてください。
用語の中身について説明します。

ちょっと休憩3

それでは、いってみましょう。

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

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

として使われるやつが「非数」です。
上でも書きましたが「NaN」を(無理やり?)日本語にした表現です。

非数2

「NaN」は「Not a Number(ノット・ア・ナンバー)」の省略表現ね。

非数3

not(ノット)の意味は「~でない」です。
否定を意味しています。
a(ア)は冠詞と呼ばれるやつです。
「1つの」とか、そんなニュアンスです。
number(ナンバー)の意味は「数字」とか「番号」です。

何となく くっつけると

数字じゃない

となります。

非数4

個人的には「非数」という表現には馴染みがありません。
プログラミングとかをしていて、よく見かけるのは「NaN」です。
ということで、本ページでも以降は「NaN」と表現します。

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

例えば、そうですね。

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

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

alert(value2);
</script>


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

非数5

ポイントとなるのは

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(数字じゃないことを表す目印)のことなんだな~」と お考えください。

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


書籍画像
わわわ説明術コラム
宣伝だよ
「分かった!」と思わせる説明の技術 知識ゼロの相手にも伝わるようになる本【Audible】
「技術書」の読書術 達人が教える選び方・読み方・情報発信&共有のコツとテクニック
体系的に学ぶ 安全なWebアプリケーションの作り方 第2版 脆弱性が生まれる原理と対策の実践