Js利用prototype自定义数组方法示例


Posted in Javascript onOctober 20, 2017

前言

在开始之前,先给大家介绍下js中使用使用原型(prototype)定义方法的好处

经常在前端面试或是和其他同行沟通是,在谈到构造在JS定义构造函数的方法是最好使用原型的方式:将方法定义到构造方法的prototype上,这样的好处是,通过该构造函数生成的实例所拥有的方法都是指向一个函数的索引,这样可以节省内存。

而本文主要给大家介绍了关于Js利用prototype自定义数组方法的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。

题目

如何实现下列代码:

[1,2,3,4,5].duplicator(); // [1,2,3,4,5,1,2,3,4,5]

解决方法

使用array的prototype属性,自定义duplicator()方法,js代码如下:

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>Document</title>
 <style></style>
 <script src="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js" type="text/javascript"></script>
</head>
<body>
 <script>
 Array.prototype.duplicator = function() {
 let s = this.concat(this)
 return s
 }
 let t = [1,2,3,4,5].duplicator()
 console.log(t)
</script>

</body>
</html>

在控制台显示效果如下:

Js利用prototype自定义数组方法示例

注意点

在书写这段代码时Array.prototype.duplicator注意不要添加任何括号,function 内部的this 指代调用这个方法的对象,即array.

总结

以上就是这篇文章的全部内容了,本文还有许多不足,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Javascript 相关文章推荐
A标签中通过href和onclick传递的this对象实现思路
Apr 19 Javascript
javascript跟随滚动效果插件代码(javascript Follow Plugin)
Aug 03 Javascript
javascript学习笔记之函数定义
Jun 25 Javascript
bootstrap提示标签、提示框实现代码
Dec 28 Javascript
AngularJs中 ng-repeat指令中实现含有自定义指令的动态html的方法
Jan 19 Javascript
使用ionic在首页新闻中应用到的跑马灯效果的实现方法
Feb 13 Javascript
EsLint入门学习教程
Feb 17 Javascript
JavaScript中常见的八个陷阱总结
Jun 28 Javascript
JS实现发送短信验证后按钮倒计时功能(防止刷新倒计时失效)
Jul 07 Javascript
vue axios同步请求解决方案
Sep 29 Javascript
微信小程序-API接口安全详解
Jul 16 Javascript
JS window对象简单操作完整示例
Jan 14 Javascript
js 中rewrap-ajax.js插件实例代码
Oct 20 #Javascript
jQuery访问浏览器本地存储cookie、localStorage和sessionStorage的基本用法
Oct 20 #jQuery
JS 中使用Promise 实现红绿灯实例代码(demo)
Oct 20 #Javascript
用JavaScript做简易的购物车的代码示例
Oct 20 #Javascript
浅谈JS 数字和字符串之间相互转化的纠纷
Oct 20 #Javascript
phantomjs导出html到pdf的方法总结
Oct 19 #Javascript
vue2.0设置proxyTable使用axios进行跨域请求的方法
Oct 19 #Javascript
You might like
PHP基础知识介绍
2013/09/17 PHP
基于php实现的验证码小程序
2016/12/13 PHP
php实现QQ小程序发送模板消息功能
2019/09/18 PHP
广告切换效果(缓动切换)
2009/05/27 Javascript
jquery 页面全选框实践代码
2010/04/02 Javascript
JavaScript中的eval()函数详解
2013/08/22 Javascript
JS是按值传递还是按引用传递
2015/01/30 Javascript
数据分析软件之FineReport教程:[5]参数界面JS(全)
2015/08/13 Javascript
js实现仿qq消息的弹出窗效果
2016/01/06 Javascript
Bootstrap项目实战之子栏目资讯内容
2016/04/25 Javascript
使用jQuery Rotare实现微信大转盘抽奖功能
2016/06/20 Javascript
Vue2.0基于vue-cli+webpack父子组件通信(实例讲解)
2017/09/14 Javascript
jQuery实现table中两列CheckBox只能选中一个的示例
2017/09/22 jQuery
JavaScript设计模式之命令模式实例分析
2019/01/16 Javascript
原生js通过一行代码实现简易轮播图
2019/06/05 Javascript
es6函数之尾调用优化实例分析
2020/04/25 Javascript
Vue实现腾讯云点播视频上传功能的实现代码
2020/08/17 Javascript
VUE中鼠标滚轮使div左右滚动的方法详解
2020/12/14 Vue.js
python 字典修改键(key)的几种方法
2018/08/10 Python
Python常用特殊方法实例总结
2019/03/22 Python
Python字典推导式将cookie字符串转化为字典解析
2019/08/10 Python
python 类的继承 实例方法.静态方法.类方法的代码解析
2019/08/23 Python
tensorflow实现二维平面模拟三维数据教程
2020/02/11 Python
Python基于进程池实现多进程过程解析
2020/04/30 Python
使用keras和tensorflow保存为可部署的pb格式
2020/05/25 Python
Python第三方包PrettyTable安装及用法解析
2020/07/08 Python
俄罗斯极限运动网上商店:Board Shop №1
2020/12/18 全球购物
自动化专业本科毕业生求职信
2013/10/20 职场文书
金融专业大学生自我评价
2014/01/09 职场文书
优秀大专毕业生求职信
2014/08/04 职场文书
企业授权委托书范本
2014/09/22 职场文书
2014年小学数学教师工作总结
2014/12/03 职场文书
大学生就业推荐表自我评价
2015/03/02 职场文书
nginx 防盗链防爬虫配置详解
2021/03/31 Servers
python3 实现mysql数据库连接池的示例代码
2021/04/17 Python
SQL解决未能删除约束问题drop constraint
2022/05/30 SQL Server