985
Evil Ones (lemmy.world)
submitted 7 months ago by [email protected] to c/[email protected]
you are viewing a single comment's thread
view the rest of the comments
[-] [email protected] 1 points 6 months ago

Yeah, you would get a runtime error calling that member without checking that it exists.

[-] [email protected] 1 points 6 months ago* (last edited 6 months ago)

Because that object is of a type where that member may or may not exist. That is literally the exact same behaviour as Java or C#.

If I cast or type check it to make sure it's of type Bar rather than checking for the member explicitly it still works:

And when I cast it to Foo it throws a compile time error, not a runtime error:

I think your issues may just like in the semantics of how Type checking works in JavaScript / Typescript.

this post was submitted on 20 Dec 2024
985 points (97.1% liked)

Programmer Humor

37243 readers
111 users here now

Post funny things about programming here! (Or just rant about your favourite programming language.)

Rules:

founded 6 years ago
MODERATORS