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 相关文章推荐
根据IP的地址,区分不同的地区,查看不同的网站页面的js代码
Feb 26 Javascript
杨氏矩阵查找的JS代码
Mar 21 Javascript
Javascript实现视频轮播在pc端与移动端均可
Sep 29 Javascript
Javascript四舍五入Math.round()与Math.pow()使用介绍
Dec 27 Javascript
js实现对table的增加行和删除行的操作方法
Oct 13 Javascript
jQuery.Validate表单验证插件的使用示例详解
Jan 04 Javascript
jQuery内容筛选选择器实例代码
Feb 06 Javascript
使用vue制作FullPage页面滚动效果
Aug 21 Javascript
Node.js学习之查询字符串解析querystring详解
Sep 28 Javascript
angularjs 页面自适应高度的方法
Jan 17 Javascript
js判断非127开头的IP地址的实例代码
Jan 05 Javascript
原生js实现自定义难度的扫雷游戏
Jan 22 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 静态变量与自定义常量的使用方法
2010/01/26 PHP
探讨PHP函数ip2long转换IP时数值太大产生负数的解决方法
2013/06/06 PHP
php通过分类列表产生分类树数组的方法
2015/04/20 PHP
PHP使用strrev翻转中文乱码问题的解决方法
2017/01/13 PHP
PHP 7安装调试工具Xdebug扩展的方法教程
2017/06/17 PHP
laravel-admin解决表单select联动时,编辑默认没选上的问题
2019/09/30 PHP
json格式化/压缩工具 Chrome插件扩展版
2010/05/25 Javascript
JavaScript二维数组实现的省市联动菜单
2014/05/08 Javascript
Jquery中find与each方法用法实例
2015/02/04 Javascript
js实现漂浮回顶部按钮实例
2015/05/06 Javascript
基于dropdown.js实现的两款美观大气的二级导航菜单
2015/09/02 Javascript
JavaScript给input的value赋值引发的关于基本类型值和引用类型值问题
2015/12/07 Javascript
Bootstrap基本样式学习笔记之表格(2)
2016/12/07 Javascript
详解vuelidate 对于vueJs2.0的验证解决方案
2017/03/09 Javascript
Angular5中调用第三方js插件的方法
2018/02/26 Javascript
vue自动化表单实例分析
2018/05/06 Javascript
Vue项目中最新用到的一些实用小技巧
2018/11/06 Javascript
js继承的这6种方式!(上)
2019/04/23 Javascript
vue操作动画的记录animate.css实例代码
2019/04/26 Javascript
ES6的异步终极解决方案分享
2019/07/11 Javascript
PHP读取远程txt文档到数组并实现遍历
2020/08/25 Javascript
Vue中使用Echarts仪表盘展示实时数据的实现
2020/11/01 Javascript
对于Python中线程问题的简单讲解
2015/04/03 Python
Python一个简单的通信程序(客户端 服务器)
2019/03/06 Python
django框架自定义模板标签(template tag)操作示例
2019/06/24 Python
将python运行结果保存至本地文件中的示例讲解
2019/07/11 Python
python dict乱码如何解决
2020/06/07 Python
python推导式的使用方法实例
2021/02/28 Python
牛津在线药房:Oxford Online Pharmacy
2020/11/16 全球购物
简述Linux文件系统通过i节点把文件的逻辑结构和物理结构转换的工作过程
2012/04/17 面试题
前台文员个人求职信范文
2014/01/05 职场文书
社区端午节活动方案
2014/01/28 职场文书
《中国的气候》教学反思
2014/02/23 职场文书
先进教师个人主要事迹材料
2015/11/03 职场文书
学生会自荐信
2019/05/16 职场文书
pytorch实现ResNet结构的实例代码
2021/05/17 Python