2017-07-19 9 views
1

次の例では、Typescriptはvalues配列の内部要素型の型文字列を推論します。次に、文字列に "selected"というプロパティがないと文句を言う。Typescriptが間違った型を推測します:TS2339プロパティ 'selected'が型 'string'に存在しません

let item = { values: [{selected: "123"}]} 

for (let foobar in item.values) { 
    if (foobar.selected === '123') { 
     console.log('found'); 
    } 
} 

error message image

typescriptです遊び場で例を実行しているとき、私は上記のエラーを取得: playground link

答えて

4

あなたはおそらくよりここで、for..of代わりのfor..inをしたい:What is the difference between (for... in) and (for... of) in javascript?

+0

あなたの答えでしたfoob​​arがその値として文字列 '' 0 ''を取得したことをOPに伝えただけであれば、もう少し役に立ちます。 – Duncan

+0

ああ、それは驚くべきことだ。私はJavaの背景から来て、その違いを認識していませんでした。 – kossmoboleat

関連する問題