js中class的使用

1、如何创建一个类

class User{} //第一种
let User=class{} //第二种

2、构造函数的使用与参数初始化

class User{
    constructor(name){
        this.name=name;
    }
}

3、静态属性的定义与使用

class request{
	static host="http://127.0.0.1";
	postBody(url){
		return request.host+`/${url}`
	}
}
let api = new request();
api.postBody("test");

3、静态方法的定义与使用

class User{
	static show=function(){}
	show(){
	}
}
User.show();//和下面的是不一样的 
let user =new User();
user.show();

4、类中使用访问器(get 和set方法)

class User{
    constructor(name) {
    	//定义_属性 一是为了证明是私有属性(不建议直接编辑或修改)  二是如果起名和set 属性 一样会陷入死循环
        this._name = name;
    }
    set name(val) {
        this._name = val
    }
    get name() {
        return this._name
    }

}
let user =new User("张三");
cnsole.log(user.name)

5、创建私有属性
第一种:命名规则保护
通过定义“_属性"的方式,来告知用户此属性为私有属性。比较随缘,如果用户乱来也没办法

class User{
    constructor(name) {
    	//定义_属性 一是为了证明是私有属性(不建议直接编辑或修改)  二是如果起名和set 属性 一样会陷入死循环
        this._name = name;
    }
}
let user =new User("张三");
//依然可以使用_name来修改属性值
user._name="李四"

第二种:使用symbol

let NAME = Symbol();
 class User {
     constructor(name) {
         this[NAME] = name;
     }
 }
 let user = new User("张三");
 console.log(user);
 console.log(user[Symbo()]);//无法取值

第三种:使用私有属性private(#)

class User {
    #name = "" //私有变量
    constructor(name) {
        this.#name = name;
    }
    //私有方法
    #check = () => {

    }
}
let user = new User("张三");
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值