Quais são os benefícios de tornar as propriedades não enumeráveis?

Enumerabilidade é um dos três atributos de uma propriedade: capacidade de escrita, enumerabilidade e configurabilidade. Minhas perguntas são:

Quais são os benefícios de tornar as propriedades não enumeráveis ​​em JavaScript? Eu sei que estamos escondendo a propriedade, tornando-os não-enumeráveis, mas quais são os benefícios da ocultação de propriedade?Podemos acessar propriedades não enumeráveis? Se sim, então qual é o benefício de torná-los não enumeráveis?Todas as propriedades predefinidas de Objetos são definidas como não enumeráveis? Tal como o caso de Array'spop epush propriedades não são enumeráveis?

questionAnswers(3)

yourAnswerToTheQuestion