文字列の書き方
JavaScriptで文字列として扱うには、クォーテーションで囲います。
JavaScriptではダブルクォーテーションとシングルクォーテーションどちらも扱うことができ、処理に違いはありません。
また、必ず文字を囲う形で使用します。
var foo = "あいうえお";
var foo = 'あいうえお';
文字列として扱うために使用したクォーテーションを、同じ種類で文字として使用したい場合は、バックスラッシュ(または円記号)でエスケープ処理を行います。
var foo = 'It\'s my dog.';
複数行
ダブルクォーテーションまたはシングルクォーテーションによって扱う文字列は複数行を含めることは通常はできません。
ただし、JavaScriptの処理によって疑似的に再現することは可能です。
詳しくは、ヒアドキュメントを疑似的に使うページをご覧ください。
なお、ECMAScript 2015(ES6)からテンプレートリテラル(テンプレート文字列)という機能が追加され、これにより複数行を扱うことができるようになりました。
ただし、全てのIEや古いバージョンのブラウザは対応していませんのでご注意ください。
JavaScript
var foo = `あああ
いいい
ううう`;
文字列内での変数の展開
ダブルクォーテーションまたはシングルクォーテーションで囲われた部分には、変数を入れて展開することはできません。
var foo = 'World';
var bar = 'Hello foo';
alert(bar); // Hello fooを出力
文字列内で展開することはできませんが、+
で結合することで展開することはできます。
var foo = 'World';
var bar = 'Hello ' + foo;
alert(bar); // Hello Worldを出力
なお、ECMAScript 2015(ES6)からテンプレートリテラル(テンプレート文字列)という機能が追加され、これにより文字列内でも変数を展開することが可能になりました。
テンプレートリテラル(テンプレート文字列)として扱うにはバッククォーテーション(`
)で囲い、展開したい変数を文字列内で${変数名}
という形で書くことで処理することができます。
ただし、全てのIEや古いバージョンのブラウザは対応していませんのでご注意ください。
var foo = 'World';
var bar = `Hello ${foo}`;
alert(bar); // Hello Worldを出力