私はこのような何か...Typescriptのオブジェクトリテラルに関数を追加するにはどうすればよいですか?
let orders = {};
let app: {orders: object} = {orders: orders};
let getNumber = function(orders: object): number {
//some code here
return some value
};
app.orders[1] = 'something';
let n = getNumber(app.orders);
上記の作品を持っています。しかし、私はこのように私の「アプリ」オブジェクトに機能を追加することでこれを行うにしようとしていた。
let getNumber = function(): number {
return this.orders[1]; //or something
};
let app: {orders: object, getNumber: object} = {orders: orders, getNumber: getNumber};
let n = app.getNumber();
つまり
let app = {};
app.orders = {};
app.getNumber = function() {
return this.orders[1]; //or something //anything the point is that i can act on app.orders
}
let n = app.getNumber()
のJavaScriptのと同等になります - 活字体で私が追加することができますオブジェクトリテラルの関数ですか?
答えが「いいえ」なら、それは問題ありません。クラスとして書く方法を理解する必要があります。しかし、私は上記が可能かどうか疑問に思っていますか?
おかげ
更新:
let getValue = function(): string {
return this.orders[1]; //or something
};
let orders: {1: string} = {1: 'abc'};
let app: {orders: object } = {orders: orders};
let val = getValue.call(app);
console.log(val) ; //abc
同じように。あなたは実際に関数型を書く方法を尋ねていますか? – SLaks
@SLaks - はい。基本的に私は何をしようとしていたのかJavaScriptでうまくいきませんので、私は混乱しました。私は、私がしようとしていたもののTypeScriptで質問を更新しましたが、実際には混乱に基づいていたので、質問はあまり準備ができていませんでした。あなたの介入に感謝します。 –