JavaScript中set与get方法用法示例

一、什么是set方法和get方法

在JavaScript中,set方法和get方法是一种访问对象属性的方式。通常情况下,使用普通的属性访问方式,可以读写对象的属性。但是如果希望对属性进行精细的控制,就需要使用set方法和get方法。

set方法和get方法的作用是:分别用于设置和获取属性的值。在调用set方法时,会将值保存在特殊的临时变量中,而在调用get方法时,则会将该变量的值返回。从而实现了对对象属性的监控和控制。

二、set方法和get方法的用法示例

2.1 示例1:监控属性变化并自动修改

例如,现在有一个Person类,其中包含了name和age两个属性。我们希望在设置age属性时,如果age超出了有效范围的话就自动将其改为合理值(如1-100之间),同时我们希望在读取age属性时,让其自动添加“岁”字。

这时,我们就可以使用set方法和get方法来实现这个需求,具体代码如下:

class Person {
    constructor(name, age) {
        this.name = name;
        this._age = age;   // 将_age属性作为私有属性,避免在set方法中陷入死循环
    }
    set age(value) {
        if (value >= 1 && value <= 100) {
            this._age = value;
        } else {
            console.log('请输入1-100之间的数字');
        }
    }
    get age() {
        return this._age + '岁';
    }
}

let p = new Person('Tom', 18);
console.log(p.age);   // 输出:18岁
p.age = 200;          // 输出:请输入1-100之间的数字
p.age = 30;
console.log(p.age);   // 输出:30岁

从上面的代码可以看出,我们将age属性封装成了一个私有属性_age,然后在设置age属性时,通过set方法对其进行监控和修改。如果age的值超出了有效范围,则输出相应的提示信息。而在读取age属性时,通过get方法自动添加“岁”字。

2.2 示例2:设置只读属性

现在,我们需要实现一个类,该类的实例无法修改某些属性的值。例如,我们创建了一个Person实例,其中的name属性只能读取,不能被修改。这时,我们就可以使用get方法来实现这个需求。

class Person {
    constructor(name, age) {
        this._name = name;
        this._age = age;
    }
    get name() {
        return this._name;
    }
    get age() {
        return this._age;
    }
}

let p = new Person('Tom', 18);
console.log(p.name);   // 输出:Tom
p.name = 'Jerry';      // 不会修改name属性的值

从上述代码中可以看出,我们没有提供set方法,因此外部无法修改name属性的值,只能通过get方法来读取该属性的值。

三、总结

set方法和get方法是JavaScript中一种常用的对象属性访问方式,通过这种方式,我们可以对属性进行精细的控制。在实际开发中,我们可以根据具体需求,使用set方法和get方法来监控和控制对象属性的赋值和读取。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JavaScript中set与get方法用法示例 - Python技术站

(0)
上一篇 2023年5月28日
下一篇 2023年5月28日

相关文章

  • js事件冒泡、事件捕获和阻止默认事件详解

    JS事件冒泡、事件捕获和阻止默认事件 事件冒泡 事件冒泡是指当一个元素触发了某个事件时,该事件会从子元素一直冒泡到祖先元素。例如,当一个按钮被点击时,点击事件会首先被触发,然后该事件会向外冒泡,一直到文档根节点才停止。 事件捕获 事件捕获是指当一个元素触发了某个事件时,该事件会从祖先元素一直捕获到子元素。例如,当一个按钮被点击时,点击事件会从文档根节点开始捕…

    JavaScript 2023年6月10日
    00
  • js运动事件函数详解

    JS运动事件函数详解 在JS中,事件函数是编写交互逻辑的重要部分。其中,运动事件函数可以实现对象的平移、缩放、旋转等效果。本文将详细讲解JS中的运动事件函数,包括常见的函数、使用注意事项和两个示例说明。 常见的运动事件函数 以下是JS常用的运动事件函数: setInterval():重复调用一个函数或执行一段代码,间隔一定的时间(以毫秒为单位)。 setTi…

    JavaScript 2023年5月27日
    00
  • html的DOM中Event对象onblur事件用法实例

    来详细讲解一下“html的DOM中Event对象onblur事件用法实例”的攻略。 什么是DOM中的onblur事件? 在HTML文档中,有许多事件是与用户的交互相关的,比如说鼠标单击、键盘按键、文本输入等等。其中有一个常用的事件是onblur,表示焦点离开了一个元素。 当某个HTML元素失去焦点时,就会触发onblur事件。例如,用户在一个输入框中输入完内…

    JavaScript 2023年6月10日
    00
  • JS支付页面倒计时的实现示例

    下面是“JS支付页面倒计时的实现示例”的完整攻略。 确定倒计时截止时间 在进行倒计时实现前,需要确定倒计时的时间截止点。假设我们的支付页面需要在用户提交订单30分钟后自动关闭,则倒计时截止时间应设置为30分钟之后的时间点。 在JavaScript中,可以使用Date对象来获取当前时间,并通过setMinutes和setSeconds方法来设置倒计时截止时间。…

    JavaScript 2023年6月11日
    00
  • 原生JS 购物车及购物页面的cookie使用方法

    下面是 “原生JS 购物车及购物页面的cookie使用方法”的完整攻略。 什么是 cookie cookie 是存储在客户端(例如浏览器)中的小数据块,包含有关用户行为和偏好的信息,以及与网站相关的其他信息。网站有时需要使用 cookie 跟踪和存储有关用户的信息。 cookie 如何在购物车和购物页面使用 在购物车和购物页面中使用 cookie 有两种方法…

    JavaScript 2023年6月11日
    00
  • JavaScript编码风格指南(中文版)

    JavaScript编码风格指南(中文版)攻略 一、什么是编码风格指南? 编码风格指南是一份约定俗成的规范,用于统一团队内的代码编写风格,包括缩进、空格、命名规则等方面。编码风格指南的好处是可以让代码更加统一、易读、易维护,提高代码质量和开发效率。 二、为什么要使用编码风格指南? 统一团队内部的代码风格,减少开发者之间因个人习惯造成的差异,方便团队合作和代码…

    JavaScript 2023年6月10日
    00
  • JavaScript中数组的排序、乱序和搜索实现代码

    下面是关于JavaScript中数组排序、乱序、搜索的完整攻略。 数组排序 sort()方法 sort()方法是 JavaScript 中的一个数组方法,用于对数组进行排序,该方法会改变原数组。sort()方法会将数组中的每个元素转化为字符串,然后通过比较它们的 Unicode 值(从左到右逐个比较对应的 ASCII 码值),来确定数组中元素的顺序。sort…

    JavaScript 2023年5月27日
    00
  • JavaScript的防抖和节流案例

    JavaScript的防抖和节流是常用的优化技巧,可以有效地控制函数的执行频率,提升Web页面的性能和用户体验。本文将从原理、使用场景,以及基于两个实际案例的讲解,逐步深入介绍JavaScript的防抖和节流优化技巧。 一、防抖和节流的原理 防抖和节流的本质都是控制函数的执行频率,从而提升Web页面的性能。他们的实现方式不同,具体如下: 1. 防抖 防抖的原…

    JavaScript 2023年6月10日
    00
合作推广
合作推广
分享本页
返回顶部