let {x} = {a: 10, b: 20, c: 30, d: 40}
console.log(x) // undefined
let {b} = {a: 10, b: 20, c: 30, d: 40}
console.log(b) // 10
console.log(c) // Error: c is not defined
Essentially, const { label } = this.props; is undefined because the object this.props does not have the label property, hence it is unable to match it, as per my x example, but in the b example it does match a property, hence it assigned correctly.