当サイトは、アフィリエイト広告を利用しています
typeScriptにて空オブジェクトを作成し、動的にプロパティを設定する方法をまとめる。
typeScritpでの型づけが崩れるため、javascriptと同様の方法ではコンパイルエラーになる。
interface LooseObject {[key: string]: any}var obj: LooseObject = {};
var obj: {[k: string]: any} = {};obj.prop1 = "test"obj.propArray = new Array();obj.propArray.push("aa")obj.propArray.push("bb")console.log(obj)
obj:{prop1:"test",propArray:["aa","bb"]}
var obj:any = {};obj.prop1 = "test"obj.propArray = new Array();obj.propArray.push("aa")obj.propArray.push("bb")console.log(obj)
typescriptの型付に反しているため推奨はしない。
基本的には型付けしておくことがベスト。
どうしようもない場合はコンパクトverを使う。
javascriptだともっと簡単にできる。
普通にやる
var user = {id: 1,name: "name",};user.country = "Japan";user["language"] = "jp";console.log("user", user);// user Object {id: 1, name: "name", country: "Japan", language: "jp"}