- Full-Stack Vue.js 2 and Laravel 5
- Anthony Gore
- 159字
- 2021-07-02 19:57:21
Getters and setters
To assign a value to a property of a JavaScript object is as simple as:
var myObj = { prop: 'Hello' }
To retrieve it is just as simple:
myObj.prop
There's no trick here. The point I want to make though, is that we can replace this normal assignment/retrieval mechanism of an object through use ofgetters and setters. These are special functions that allow custom logic for getting or setting the property's value.
Getters and setters are especially useful when one property's value is determined by another. Here's an example:
var person = { firstName: 'Abraham', lastName: 'Lincoln', get fullName() { return this.firstName + ' ' + this.lastName; }, set fullName(name) { var words = name.toString().split(' '); this.firstName = words[0] || ''; this.lastName = words[1] || ''; } }
Thegetandsetfunctions of thefullNamepropertyare invoked whenever we attempt a normal assignment/retrieval of its value:
console.log(person.fullName); // Abraham Lincoln person.fullName = 'George Washington'; console.log(person.firstName); // George console.log(person.lastName) // Washington
推薦閱讀
- TypeScript Essentials
- Spring 5.0 Microservices(Second Edition)
- Redis Applied Design Patterns
- Learning AWS Lumberyard Game Development
- Bulma必知必會
- SQL Server 2016數據庫應用與開發習題解答與上機指導
- Linux Device Drivers Development
- OpenGL Data Visualization Cookbook
- Julia 1.0 Programming Complete Reference Guide
- Getting Started with Python
- ASP.NET Web API Security Essentials
- Go語言入門經典
- 精通Spring:Java Web開發與Spring Boot高級功能
- 企業級Java現代化:寫給開發者的云原生簡明指南
- Mastering Drupal 8