JavSscript, TypeScript で 型のメソッドを使いたいのに TypeError: Cannot read property ‘xxxxx’ of undefined が出るときの対処方法

たとえば、オブジェクト型なのに、文字列型の substrメソッドを使いたいとき、 そのまま obj_A.substr(0,2) などとした場合、以下のエラーが発生します。

TypeError: Cannot read property 'substr' of undefined

こんなときは、文字列型として、オブジェクトを生成します。

    let tmpKekkaStr:any;
    tmpKekkaStr = new String(obj_A)

new String(obj_A) で文字列型オブジェクトを生成しています。

こうすることで、tmpKekkaStr は文字列型として定義されますので、

substr()substring()slice() など使うことができます。

[商品価格に関しましては、リンクが作成された時点と現時点で情報が変更されている場合がございます。]

実践TypeScript【電子書籍】[ 吉井健文 ]
価格:3726円 (2019/7/23時点)

[

楽天で購入

](https://hb.afl.rakuten.co.jp/hgc/18648e8b.7d833591.18648e8c.ed1bab3c/?pc=https%3A%2F%2Fitem.rakuten.co.jp%2Frakutenkobo-ebooks%2F5456816fd8833397a6aa8b80647873ad%2F%3Fscid%3Daf_pc_bbtn&m=http%3A%2F%2Fm.rakuten.co.jp%2Frakutenkobo-ebooks%2Fi%2F18341447%2F%3Fscid%3Daf_pc_bbtn&link_type=picttext&ut=eyJwYWdlIjoiaXRlbSIsInR5cGUiOiJwaWN0dGV4dCIsInNpemUiOiIyNDB4MjQwIiwibmFtIjoxLCJuYW1wIjoicmlnaHQiLCJjb20iOjEsImNvbXAiOiJkb3duIiwicHJpY2UiOjEsImJvciI6MSwiY29sIjoxLCJiYnRuIjoxfQ==)

コメント

タイトルとURLをコピーしました