関数のデフォルトパラメータを、以下でContextという形で定義した時に、関数で設定するときは以下のようなやり方。type指定で要素をオプション指定しているので、log関数では指定したい方だけ指定すれば良い。
// default parameter
type Context = {
appID?: string,
userID?: string
}
function log(message: string, context: Context = {userID:'aaabID'}){
let time = new Date().toString()
console.log(time, message, context.userID)
}
let id: Context = {userID: 'xxxyID'}
log('parameter', id) // Wed Jun 14 2023 14:43:05 GMT+0900 (日本標準時) parameter xxxyID
log('parameter') // Wed Jun 14 2023 14:43:05 GMT+0900 (日本標準時) parameter aaabID
TypeScriptというだけあって、型が中心にあるように感じる言語です。
admin