JavaScript get set方法 ES5/ES6写法
网上鲜有get和set的方法的实例,在这边再mark一下。
get和set我个人理解本身只是一个语法糖,它定义的属性相当于“存储器属性”
为内部属性提供了一个方便习惯的读/写方式
ES5写法
1 function Number(num) { 2 this._num = num //这里的_num和get/set方法num()不能重名 3 } 4 5 //get/set方法使用同一个命名,增加可读性 6 Number.prototype = { 7 get num() { 8 return this._num; 9 }, 10 11 set num(num) { 12 this._num = num; 13 } 14 } 15 16 var test = new Number(8); 17 console.log(test.num); 18 test.num = 88; 19 console.log(test.num);
输出:
>8
>88
在这里,定义了Number类的一个值_num,再原型中注入set和get方法,此时就可以使用test.num取值和赋值,更加直观。
ES6写法
再看看用ES6中class的实现:
1 class Num { 2 constructor(num) { 3 this._num = num; 4 } 5 6 get num() { 7 return this._num; 8 } 9 10 set num(num) { 11 this._num = num; 12 } 13 14 } 15 16 var test = new Num(9); 17 console.log(test.num); 18 test.num = 99; 19 console.log(test.num);
输出:
>9
>99
转载于:https://www.cnblogs.com/ljwTiey/p/7387598.html
JavaScript get set方法 ES5/ES6写法相关推荐
- JavaScript get set方法 ES5 ES6写法
title: JavaScript get set方法 ES5/ES6写法 date: 2018-05-07 10:38:50 tags: 前端 categories: 前端 网上鲜有get和set的 ...
- react-native ES5与ES6写法对照表
转载链接:http://www.ncloud.hk/%E6%8A%80%E6%9C%AF%E5%88%86%E4%BA%AB/react-native-es5-and-es6-writing-tabl ...
- ES6解构赋值: ES6...转为ES5的写法
es6的特性,主要用于 数组和对象的析构 直接上问题: 因为chrome低版本(用的55版本)不支持es6...的下面这种写法, 需要转为es5写法 function calcLinePaths() ...
- ES6写法的reactjs
reactjs是目前最火的单页面框架,面向ES6语法,使用JSX语法进行组件化开发.JSX语法是把js和html混合起来编写代码,其核心就是以"<"">&qu ...
- php es6写法,ES6...扩展运算符(示例代码)
在数组中的应用 扩展运算符(spread)是三个点(...).它好比 rest 参数的逆运算,++将一个数组转为用逗号分隔的参数序列++. console.log(...[1, 2, 3]) // 1 ...
- Js Array数组ES5/ES6常用方法
Js Array数组ES5/ES6常用方法 1.栈方法(先进后出) push():在数组的最后一项后追加值(参数:可以为多个值或数组) 返回:数组的长度,改变了原数组. var a=[1,2,3] a ...
- canvas:心率图案例 + ES5/ES6封装该案例
主要目的是练习:ES5中函数的封装 和 ES6中class类的封装 1.没有封装 <body><style>canvas {border: 1px skyblue solid; ...
- JavaScript的replace方法与正则表达式结合应用讲解
大家好!!今晚在华软G43*宿舍没什么事做,把javascript中replace方法讲解一下,如果讲得不对或不合理是情理之中的事,因为我不是老鸟,也不是菜鸟,我也不知道我当底是什么鸟??呵~~ re ...
- JavaScript数据迭代方法差别
js有很多总迭代方法,ES6之后又新增了几个: 这里主要讨论数组迭代遍历的方法所以不会细讲for...in... ES5.ES6数组迭代方法有: forEach map filter some eve ...
最新文章
- Codeforces Round #320 (Div. 1) [Bayan Thanks-Round] B. Or Game
- 第4章 与缓冲区有关的函数
- 【机器学习基础】数学推导+纯Python实现机器学习算法15:GBDT
- 更改用户密码oracle,oracle数据库更改用户密码
- h1、h2、h3标签及strong标签对页面seo的影响
- 我不藏了:7个技术体系、共100篇文章、总计1OO万字
- web项目上之深入理解Java国际化
- 析砂性土层php泥浆护壁,砂卵石层钻探护壁工艺分析
- Chronos首页、文档和下载 - 作业调度器 - 开源中国社区
- 如何一个动态创建对象?
- 优秀架构师是怎么炼成的?
- 【HDU 5033】【经典单调栈问题】Building
- 2021年最棒的10款Java框架,你喜欢哪个?
- html5shiv源码,前端开发必配置:html5shiv.js和respond.min.js的作用说明!
- Visual Studio使用教程
- 逆函数求导公式_反函数求导公式
- 父亲节,各大产品借势宣传文案,每一句都“爸”气十足
- [android]so easy实现根据viewpager、edittext、时间使背景动态渐变色效果~
- MyBatis官网下载步骤
- 对Java的展望_优秀技能经验及对java学习展望
热门文章
- 快速搭建MQTT服务器(MQTTnet和Apache Apollo)
- Android之shape属性简介和使用
- AHK 中的字符串拼接和遍历操作
- jenkins 持续集成, 使用sbt多项目同时package
- 谷歌正在开发的十大惊人项目
- [Linux] linux服务器主机性能、空间监控脚本
- MongoDB(window安装及服务配置)
- 视频分辨率和音频质量_高分辨率音频的声音是否比CD质量好?
- devops相关书籍哪个好_您在DevOps周期中的哪个位置进行安全保护?
- vm 和 容器对比_您将VM放在我的容器中