JavaScript
 Computer >> コンピューター >  >> プログラミング >> JavaScript

JavaScriptで変数の前に付く「+」(プラス)記号の意味とは?単項プラス演算子による数値変換を解説

JavaScriptにおいて、変数の前に付くプラス(+)記号は「単項プラス演算子」と呼ばれ、その値を数値型(number)へ変換する役割を持っています。文字列として定義された数字も、この記号を付けることで数値として扱えるようになり、正しい計算が可能になります。

単項プラス演算子の基本

たとえば "1000" のようにダブルクォートで囲まれた値は、見た目が数字でも実際には文字列型(string)です。このまま足し算を行うと、数値の加算ではなく文字列の連結や意図しない結果になることがあります。そこで変数の前に + を付けると、JavaScriptが自動的にその値を数値型へ変換してくれます。

サンプルコード

以下のコードでは、プラス記号による型変換の動作を確認できます。

var firstValue="1000";
console.log("firstValue のデータ型 ="+typeof firstValue);
var secondValue=1000;
console.log("secondValue のデータ型 ="+typeof secondValue);
console.log("+ 記号使用時の firstValue のデータ型 ="+typeof +firstValue);
var output=+firstValue + secondValue;
console.log("加算結果="+output);

上記のプログラムを実行するには、次のコマンドを使用します。

node fileName.js

実行結果

ここではファイル名を demo149.js とします。実行すると、以下のような出力が得られます。

PS C:\Users\Amit\JavaScript-code> node demo149.js
firstValue のデータ型 =string
secondValue のデータ型 =number
+ 記号使用時の firstValue のデータ型 =number
加算結果=2000

ポイントまとめ

firstValue"1000" と文字列として定義されているため、最初のデータ型は string です。
secondValue は数値リテラルなので、データ型は number です。
+firstValue のように単項プラスを付けると、データ型が number に変換されます。
・その結果、+firstValue + secondValue は数値同士の加算となり、出力は 2000 になります。

なお、単項プラス演算子は Number() 関数とほぼ同じ働きをします。数値に変換できない値(例: "abc")に対しては NaN(Not a Number)を返す点にも注意してください。文字列の数値変換を手軽に行いたい場合に便利な演算子です。

  1. JavaScriptの型強制(Type Coercion)とは?仕組みを初心者向けにわかりやすく解説

    型強制(Type Coercion)とは、あるデータ型が自動的・暗黙的に別のデータ型へと変換される仕組みのことです。JavaScriptは動的型付け言語であり、開発者が明示的に型を指定しなくても、状況に応じて値の型が自動的に変換されます。特に注意が必要なのが「+」演算子です。片方が文字列の場合、数値は文字列に変換されて文字列の連結として処理されます。一方、「-」「*」「/」などの算術演算子では、文字列は数値へ変換されるため、挙動の違いを理解しておくことが重要です。以下に、JavaScriptにおける型強制の動作を確認できるサンプルコードを示します。サンプルコード<!DOCTYPE htm

  2. JavaScriptのErrorクラスは拡張できる?カスタムエラーを作成する最適な方法

    JavaScriptでは、組み込みのErrorクラスを継承することで、独自のカスタムエラーを作成できます。最も推奨される方法は、ES2015(ES6)以降のclass構文とextendsキーワードを使って、標準のErrorクラスを拡張した新しいカスタムエラークラスを定義することです。カスタムエラーを利用すれば、エラーの種類を名前で判別したり、エラーコードなどの独自のプロパティを持たせたりできるため、アプリケーションの規模が大きくなっても、柔軟で分かりやすいエラーハンドリングを実現できます。カスタムエラーの実装例以下は、JavaScriptでErrorクラスを拡張するサンプルコードです。<