编写一个JavaScript类,其中一个方法既可以获取又可以设置属性,这是一种不好的做法吗?
创始人
2024-12-06 22:00:54
0

在 JavaScript 中,可以使用 getter 和 setter 方法来实现既可以获取又可以设置属性的类。以下是一个示例:

class ExampleClass {
  constructor() {
    this._property = 0;
  }

  get property() {
    return this._property;
  }

  set property(value) {
    this._property = value;
  }
}

const example = new ExampleClass();
console.log(example.property); // 输出: 0

example.property = 10;
console.log(example.property); // 输出: 10

这种方法是一种常见的做法,可以让你在获取或设置属性时执行一些逻辑。例如,在 getter 中可以对属性进行验证或转换,而在 setter 中可以做一些额外的操作。

然而,有人认为这种方式可能不够好,因为它破坏了面向对象编程中的封装原则。通过直接访问属性而不是使用 getter 和 setter 方法,可以更好地控制属性的访问和修改。此外,使用 getter 和 setter 方法可能会导致代码更加复杂,因为需要在每次访问该属性时都需要调用方法。

因此,这种做法是有争议的,取决于具体的情况和个人的编码风格。在某些情况下,使用 getter 和 setter 方法可能是有价值的,但在其他情况下,直接访问属性可能更合适。

相关内容

热门资讯

记者揭秘!智星菠萝辅助(透视辅... 记者揭秘!智星菠萝辅助(透视辅助)拱趴大菠萝辅助神器,扑克教程(有挂细节);模式供您选择,了解更新找...
一分钟揭秘!约局吧能能开挂(透... 一分钟揭秘!约局吧能能开挂(透视辅助)hhpoker辅助靠谱,2024新版教程(有挂教学);约局吧能...
透视辅助!wepoker模拟器... 透视辅助!wepoker模拟器哪个好用(脚本)hhpoker辅助挂是真的,科技教程(有挂技巧);囊括...
透视代打!hhpkoer辅助器... 透视代打!hhpkoer辅助器视频(辅助挂)pokemmo脚本辅助,2024新版教程(有挂教程);风...
透视了解!约局吧德州真的有透视... 透视了解!约局吧德州真的有透视挂(透视脚本)德州局HHpoker透视脚本,必胜教程(有挂分析);亲,...
六分钟了解!wepoker挂底... 六分钟了解!wepoker挂底牌(透视)德普之星开辅助,详细教程(有挂解密);德普之星开辅助是一种具...
9分钟了解!wpk私人辅助(透... 9分钟了解!wpk私人辅助(透视)hhpoker德州透视,插件教程(有挂教学);风靡全球的特色经典游...
推荐一款!wepoker究竟有... 推荐一款!wepoker究竟有透视(脚本)哈糖大菠萝开挂,介绍教程(有挂技术);囊括全国各种wepo...
每日必备!wepoker有人用... 每日必备!wepoker有人用过(脚本)wpk有那种辅助,线上教程(有挂规律);wepoker有人用...
玩家必备教程!wejoker私... 玩家必备教程!wejoker私人辅助软件(脚本)哈糖大菠萝可以开挂,可靠技巧(有挂神器)申哈糖大菠萝...