我想让一个对象的一些属性被隐藏,一些在迭代时可见。所以我尝试使用原型,但这不起作用:
function Car(){}
Car.prototype.version = '1.0';
var car_instance = new Car();
car_instance.make = 'BMW';
car_instance.model = 'x5';
for(property in car_instance){
document.body.innerHTML += property + '<br>';
}
但这version
也输出:
make
model
version
我真的很喜欢隐藏一些函数/方法但可以轻松访问它的想法car_instance.version
,事实上,如果我 console.log 该对象在proto下也有其他属性,这些属性不包含在 for in 循环中。
那么我应该如何解决这个问题呢?