定义:
公有属性:是指在对象外可以访问到对象内的某个属性。
私有属性:只在函数内部可以访问,外部强行访问则会报错。
公共属性方法:
function Public(name, age) {
this.name = name
this.age = age
}
Public.prototype = ({
who: function () {
console.log(this.name)
},
old: function () {
console.log(this.age)
}
})
var Public = new Public('小雨', 30);
Public.who() // 小雨
Public.old() // 30
私有属性和方法:
function Private(name, age) {
var name = name
var age = age
var who = function () {
console.log(name)
}
var old = function () {
console.log(age)
}
this.init = function () {
who()
old()
}
}
var Private = new Private('小雨', 30)
Private.init() // 小雨 30
Private.who() // TypeError: Private.who is not a function
Private.old()
通过this
或者prototype
暴露的方法就是共用属性方法,比如var
定义在内部的方法就算私有属性方法。
网友评论