`Array`, `Boolean`, `Number`, `String`, etc.
Since the `for ... in` statement loops over the enumerable properties, it will include new methods which are added to the prototype.Array.prototype.isEmpty = function () {return (this.length = 0);};const a = ['cat', 'dog', 'mouse'];for (let i in a) {console.log(i); // '0', '1', '2', 'isEmpty'}