首页  >  文章  >  web前端  >  Javascript中访问器的优先级

Javascript中访问器的优先级

autoload
autoload原创
2021-04-09 17:57:341825浏览

2021040917385442144.jpg

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