对象---访问器
时间:2020-04-15
本文章向大家介绍对象---访问器,主要包括对象---访问器使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
const user = {
name : '张三',
age : 19
}
console.log(user); // {name: "张三", age: 19}
user.age = 10000;
console.log(user); // {name: "张三", age: 10000}
上述事例中,在对象外可以更改对象的属性的值,但是有时需要对改动的值设置范围,超过范围应该提示错误。
例:年龄应该设置为number类型,且年纪大于10岁小于100岁。
const user = {
data :{
name : '张三',
age : 19
},
set age(value){
// console.log(value)
if(typeof value !== "number" || value > 100 || value <= 10){
throw new Error('请传入符合规定的年纪');
}
this.data.age = value
},
get age(){
return this.data.age
}
}
user.age = 17;
console.log(user.age); // 17
伪造属性
let lesson = {
lists:[
{name : 'js', price : 100},
{name : 'mysql', price : 233},
{name : 'vue.js', price : 199}
],
get total(){
return this.lists.reduce((t,l)=>{
return t + l.price
},0)
}
}
console.log(lesson.total); // 532
使用访问器批量设置属性
let web = {
name : '百度',
url : 'www.baidu.com',
set site(value){
console.log(value.split(','));
[this.name,this.url] = value.split(',');
console.log(this.name,this.url);
},
get site(){
return `${this.name}的网址是${this.url}`
}
}
web.site = '淘宝,www.taobao.com';
console.log(web.site); // 淘宝的网址是www.taobao.com
token的读写处理
let Request = {
set token(content){
localStorage.setItem("token",content);
},
get token(){
let token = localStorage.getItem("token");
if(!token){
alert('请登录');
}
return token;
}
}
Request.token = "0821301489274982";
console.log(Request.token);
原文地址:https://www.cnblogs.com/zhongfang/p/12706644.html
- 基于 Python 的僵尸网络将 Linux 机器变成挖矿机器人
- Oracle导入导出常用命令
- Spring Cloud实战小贴士:Zuul处理Cookie和重定向
- 设计模式之代理模式(二)CGLIB动态代理实现
- ios手势复习值之换图片-转场动画(纯代码)
- 顺序广播和无序广播
- Netflix Zuul与Nginx的性能对比
- 最有价值的50道java面试题(一)
- 用 Python 从零开始玩微信跳一跳
- ios地图小例子和手势的使用 供大家参考一下呦
- Spring Cloud源码分析(四)Zuul:核心过滤器
- basicAnimation移动图形
- 一个layer可以跟着画完的线移动ios程序 好玩啊。
- 最有价值的50道java面试题(二)
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- linux 触摸屏驱动编写
- centos yum更新及删除多余启动项
- React进阶(1)-理解Redux
- MySQL死锁系列-线上死锁问题排查思路
- # 3分钟短文:Laravel路由注册,你必须掌握的“动词”!
- 资深程序员带你解锁Android性能优化五大误区和两大疑点!(附333页性能优化PDF宝典)
- Android大三提前批的钉钉和抖音面筋,阿里挂了HR面,抖音通过收获Offer
- leetcode之键盘行
- 浅析centos 7 自带的 php 5.4升级为 5.6的方法
- Linux内核设备驱动地址映射笔记整理
- Linux中的who命令实例介绍
- Linux十个新手命令分享
- Linux 内核通用链表学习小结
- 从零开始针对 .NET 应用的 DevOps 运营实践 - 运行环境搭建
- 面试问我,创建多少个线程合适?我该怎么说