javaScript 之set/get方法的使用
例1:var fe={
name:'leony',
$age:null,
get age(){
if(this.$age == undefined){ //this.$age == undefined 或 this.$age == null
return new Date().getFullYear()-1989;
}else{
return this.$age;
}
},
set age(val){
val = +val; //数字转换,若为非数字会转为NaN;
if(!isNaN(val)&&val>0&&val<150){
this.$age = +val;
}else{
throw new Error("Incorrect val = "+val);
}
}
}
console.log(fe.age)
fe.age='aaa'; //调取 fe 函数的 set 方法
console.log(fe.age)
例2:var person={};
Object.defineProperties(person,{ // Object.defineProperties 创建多个对象属性;
title:{value:"fe",enumerable:true},
corp:{value:"baba",enumerable:true},
salary:{value:30000,enumerable:true,writable:true},
luck:{
get:function(){
return Math.random()>0.5?"good":"bad"
}
},
promote:{
set:function(level){
this.salary*=1+level*0.1;
}
}
})
console.log(Object.getOwnPropertyDescriptor(person,"title"));
console.log(person.salary);
console.log(person.luck);
person.promote=2;
console.log(person.salary);
Object.defineProperty(obj,"属性",{定义方法});
定义方法:enumerable:是否可枚举,影响 for in 方法,为"false"时不能被 for in 查找
writable:是否可被修改
configurable:是否可被 delete 方法删除
Object.getOwnPropertyDescriptor(object,propertyname) : 获取指定对象的自身属性描述符。自身属性描述符是指直接在对象上定义(而非从对象的原型继承)的描述符
object 必需。 包含属性的对象。
propertyname 必需。 属性的名称。
javaScript 之set/get方法的使用的更多相关文章
- Android和JavaScript相互调用的方法
转载地址:http://www.jb51.net/article/77206.htm 这篇文章主要介绍了Android和JavaScript相互调用的方法,实例分析了Android的WebView执行 ...
- JavaScript document属性和方法
JavaScript document属性和方法 --------------------------------------------属性: 1. Attributes 存储节点的属性列表 ...
- 将JavaScript 插入网页的方法
将JavaScript 插入网页的方法 使用Javascript代码. 插入JavaScript 与在网页中插入CSS的方式相似.使用下面的代码可以在网页中插入JavaScript: ... 其中的. ...
- JavaScript常用对象的方法和属性
---恢复内容开始--- 本文将简单介绍JavaScript中一些常用对象的属性和方法,以及几个有用的系统函数. 一.串方法 JavaScript有强大的串处理功能,有了这些串方法,才能编写出丰富多彩 ...
- js 判断数组包含某值的方法 和 javascript数组扩展indexOf()方法
var questionId = []; var anSwerIdValue = []; ////javascript数组扩展indexOf()方法 Array.prototype.indexOf ...
- Javascript调用C#后台方法及JSon解析
Javascript调用C#后台方法及JSon解析 如何使用Ajax 调用C# 后台方法. 本文目录 如何使用Ajax 调用C# 后台方法. 1.后台(.cs)测试方法 2.前台调用(javasc ...
- javascript中的splice方法介绍&示例
javascript 中的 splice 方法很强大,它可以用于插入.删除或替换数组的元素. 下面来一一介绍! 删除:用于删除元素,两个参数,第一个参数(要删除第一项的位置),第二个参数(要删除的项数 ...
- Javascript对象属性与方法汇总
Javascript对象属性与方法汇总 发布时间:2015-03-06 编辑:www.jquerycn.cn 详细介绍下,javascript对象属性与对象方法的相关知识,包括javascript字符 ...
- javascript对象事件绑定方法
javascript对象事件绑定方法 今天在做对象事件绑定的过程中出现了一点异外情况,由于事件方法是由参数传过来的,需要将当前对象call过去,方便方法体里直接调用this 错误写法 obj.oncl ...
- JavaScript刷新页面的方法(包括Frame框架的刷新方式)
JavaScript刷新页面的方法 1 history.go(0) 去指定的某页 2 window.location.reload()刷新当前页面 window.location.relo ...
随机推荐
- Jedis 之 初始<一>
package xx.jedis; import java.util.Set; import redis.clients.jedis.Jedis; import redis.clients.jedis ...
- yii CFormModel中的rules验证机制
public function rules() { return array( array('username, password', 'required'), array('rememberMe', ...
- English trip -- VC(情景课) 7 A Shopping 购物
Words The clothes place a dress 长裙 short skirt 短裙 pants 裤子 / trousers 长裤 / shorts 短裤 a shir ...
- LeetCode--155--最小栈
问题描述: 设计一个支持 push,pop,top 操作,并能在常数时间内检索到最小元素的栈. push(x) -- 将元素 x 推入栈中. pop() -- 删除栈顶的元素. top() -- 获取 ...
- Java 源代码和 C 源代码的运行区别
与其他程序的执行方式和编译方式不同. Java 源代码需要进行编译成字节码后在 Java 虚拟机上运行,这样 Java 程序能够保持独立性和跨平台功特性. 请参考下图. https://www.cwi ...
- Java基础-封装(09)
通过对象直接访问成员变量,会存在数据安全问题(比如年龄不能为负).这个时候,我们就不能让外界的对象直接访问成员变量. private关键字 是一个权限修饰符.可以修饰成员(成员变量和成员方法)被pri ...
- linux 查找
linux下的查找命令有很多,常用的有which.whereis.locate.find.平时在网上搜索一些教程的时候,经常会有让使用这四条命令中的一条去查找一些东西,但是经常这次说用which,下次 ...
- CentOS 7 Install Gitlab CE
https://hostpresto.com/community/tutorials/how-to-install-and-setup-gitlab-on-centos-7/ http://linux ...
- vue 右键菜单插件 简单、可扩展、样式自定义的右键菜单
今天分享的不是技术,今天给大家分享个插件,针对现有的vue右键菜单插件,大多数都是需要使用插件本身自定义的标签,很多地方不方便,可扩展性也很低,所以我决定写了一款自定义指令调用右键菜单(vuerigh ...
- 使用XML Publisher导出PDF报表
生成XML数据源有两种方式. 一种是使用存储过程,返回一个clob作为xml数据源. 另一种是直接使用VO中的数据生成xml数据源. 方法一参考: Oracle XML Publisher技巧集锦 O ...