首頁  >  文章  >  web前端  >  Javascript中存取器的優先權

Javascript中存取器的優先權

autoload
autoload原創
2021-04-09 17:57:341761瀏覽

Javascript中存取器的優先權

1.正常使用

#
 <script>
            const product ={
                //属性
                data : [
                    {id :1 ,name : "电脑" , price:5000 , num : 5},
                    {id :2 ,name : "手机" , price:4000, num : 15},
                    {id :3 ,name : "相机" , price:6000, num : 25}
                ],
                //计算金额(方法)
                //es6的方法的简化,将冒号和function关键字可以删除
                getAmounts : function(){
                    return this.data.reduce((t,c) => (t+=c.price *c.num),0);
                },
                //访问器属性,将一个方法包装成一个属性

                //get:是读取,也叫读操作
                get total(){
                    return this.data.reduce((t,c) =>(t+=c.price *c.num),0 );
                },
                //set:是写操作 访问器属性的写操作
                set setNum(num){
                    this.data[1].num=num;
                },
                set setPrice(price){
                    this.data[1].price=price;
                },
            };
            console.log(product.getAmounts());
            console.log("总金额为:",product.total);
            product.setPrice=100;
            console.log("更改后的价格为:",product.data[1].price);
 </script>

2.存取器屬性的優先權高於同名的普通屬性

  <script>
          let user={
              //属性
              data:{name},
              //方法
              set name(name){
                  this.data.name=name;
              },
              get name(){
                  return this.data.name;
              }
          }
          user.name="呵呵";
          console.log(user.name);
    </script>

推薦:《2021年js面試題目及答案(大匯總)

以上是Javascript中存取器的優先權的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn