私有属性概念
一、不能随意访问,必须通过指定的方法来访问和修改。比如QQ密码,电话,身份证号等等;
二、安全系数高的;
三、设置需要特殊格式,不能随意设置的
如何设置私有属性
js中并没有私有属性的概念所以需要利用闭包的思想,
将私有属性封装给局部变量;
var phon=phone;在函数运行之后就销毁。所以要从外部去拿
getphone//去获取电话
setphone//设置方法
function User(name,age,password,phone){
var phone=phone / /调用后就销毁
this.name=name
this.password=password
this.age=age
//闭包的局部变量在他内部的方法可以访问到 get方法 来获取
this.getPhone=function(判定条件,不满足则return返回空){
//判定
return phone
}
// set方法 来设置
this.setPhone=function(iphone){
var reg=/\d{11} //正则表达式 必须是十一位数字
if(reg.test(iphone)){
phone=iphone
}else{
alert("不符合规范")
}
}
}
var u1=new User("王一",21,"123456",15233645788)
console.log(u1.getPhone())
u1.setPhone(15233567888)
console.log(u1.getPhone())