Closed1
Typescriptオブジェクトのネストを.区切りで参照できない
パターン①
interface User {
firstName: string
lastName: string
ability: {
power: number
intelligence: number
toughness: number
}
}
const player1 = {} as User
// これは代入できる
player1.firstName = Mike
player1.lastName = Popcorn
// powerなどそれぞれが参照できずエラーとなる
player1.ability.power = 80
player1.ability.intelligence = 60
player1.ability.toughness = 50
パターン②
↓は代入できる
interface User {
firstName: string
lastName: string
ability: {
power: number
intelligence: number
toughness: number
}
}
const player1 = {
firstName: Mike
lastName: Popcorn
ability: {
power: 80
intelligence: 60
toughness: 50
}
} as User
何故か・・
多分、パターン①はplayer1がただの一階層のオブジェクトとして判定されている(↓の部分)
const player1 = {} as User
このスクラップは2023/03/01にクローズされました