前回までの演算子で、四則演算の中で「+演算子」だけはオペランドによって動きが変わるという説明を書きました。
+演算子は、オペランドが数値の場合は加算し、文字列の場合は連結を行います。
簡単な例として
var test = 10 + 20; console.log(test);
上記の場合は、結果が30と出力され、
var test = "10" + "20"; console.log(test);
上記の場合は、1020と出力されます。
上記の場合の他に、片方のオペランドが文字列で、もう片方のオペランドが数値の場合は、数値のオペランドが文字列に型変換できるオペランドの場合は文字列に変換されて連結されます。
オペランドのどちらかがオブジェクトの場合、基本型値への変換アルゴリズムが使われ、基本型値に変換されます。
基本型へ変換された後、片方のオペランドが文字列の場合は、もう片方のオペランドも文字列へ変換され、連結されます。
それ以外の場合は、両方のオペランドを数値に変換して加算処理されます。