JavaScript Optional chaining
You should get Uncaught TypeError: Cannot read property ~~ of undefined, because you accessed txt property even though there is not middleName property.
function user (firstName, lastName) {
this.firstName = firstName
this.lastName = lastName
}
const me = new user2('ys', 'a')
console.log(me.middleName.txt) // Uncaught TypeError: Cannot read property 'txt' of undefined at <anonymous>
Instead of using ., use ?.
function user (firstName, lastName) {
this.firstName = firstName
this.lastName = lastName
}
const me = new user2('ys', 'a')
console.log(me.middleName?.txt) // undefined
You got just undefined.
?. operator does not cause Cannot read property undefined error, even when there is not middleName property.
You can use ?. operator on function call and [].
Reference: MDN
Leave a comment