TypeScript の string と String の使い方
概要
TypeScript を書いていると、引数や戻り値に string
型をよく使いますが String
型もあります.
この二つがどのような違いがあるのかちゃんと理解していなかったので、簡単にまとめてみました.
違い
string
はプリミティブ型、String
はオブジェクト型という違いがあります.
// string 型の変数を定義
const str1 = "string";
const str2 = String("string")
// String 型の変数を定義
const Str1: String = "String"
const Str2 = new String("String")
console.log(typeof str1) // string
console.log(typeof Str1) // object
この二つの型の使い分けですが、公式のドキュメントにあるように 基本的に string
を使っておけば良さそうです.
詳しい理由は書かれていないですが、String
の方がインスタンスを作るのでコストが高いとかだと思います.
参考資料