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 相关文章推荐
js类 from qq
Nov 13 Javascript
几款极品的javascript压缩混淆工具
May 16 Javascript
只需20行代码就可以写出CSS覆盖率测试脚本
Apr 24 Javascript
js实现鼠标经过表格行变色的方法
May 12 Javascript
jQuery实现气球弹出框式的侧边导航菜单效果
Sep 22 Javascript
js简单网速测试方法完整实例
Dec 15 Javascript
微信小程序 配置文件详细介绍
Dec 14 Javascript
vue2.0父子组件及非父子组件之间的通信方法
Jan 21 Javascript
详解Angular路由 ng-route和ui-router的区别
May 22 Javascript
Vue全家桶实践项目总结(推荐)
Nov 04 Javascript
vue基于两个计算属性实现选中和全选功能示例
Feb 08 Javascript
微信小程序后端实现授权登录
Feb 24 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 Ajax乱码
2008/04/09 PHP
php 获取一个月第一天与最后一天的代码
2010/05/16 PHP
PHP写UltraEdit插件脚本实现方法
2011/12/26 PHP
win2003服务器使用WPS的COM组件的一些问题解决方法
2012/01/11 PHP
PHP file_get_contents设置超时处理方法
2013/09/30 PHP
CI框架数据库查询之join用法分析
2016/05/18 PHP
PHP+JQuery+Ajax实现分页方法详解
2016/08/06 PHP
PHP实现websocket通信的方法示例
2018/08/28 PHP
php传值和传引用的区别点总结
2019/11/19 PHP
javaScript函数中执行C#代码中的函数方法总结
2013/08/07 Javascript
jQuery中delegate()方法用法实例
2015/01/19 Javascript
Node.js事件循环(Event Loop)和线程池详解
2015/01/28 Javascript
javascript设置和获取cookie的方法实例详解
2016/01/05 Javascript
angularJS 如何读写缓冲的方法(推荐)
2016/08/06 Javascript
BootStrap daterangepicker 双日历控件
2017/06/02 Javascript
详谈构造函数加括号与不加括号的区别
2017/10/26 Javascript
React Native 真机断点调试+跨域资源加载出错问题的解决方法
2018/01/18 Javascript
webpack4 处理SCSS的方法示例
2018/09/03 Javascript
nodejs和react实现即时通讯简易聊天室功能
2019/08/21 NodeJs
Node.js系列之连接DB的方法(3)
2019/08/30 Javascript
Vue 使用Props属性实现父子组件的动态传值详解
2019/11/13 Javascript
JavaScript实现前端倒计时效果
2021/02/09 Javascript
Python中实现参数类型检查的简单方法
2015/04/21 Python
Python 正则表达式入门(中级篇)
2016/12/07 Python
Python中一个for循环循环多个变量的示例
2019/07/16 Python
python用match()函数爬数据方法详解
2019/07/23 Python
python可视化实现KNN算法
2019/10/16 Python
python绘制BA无标度网络示例代码
2019/11/21 Python
如何快速一次性卸载所有python包(第三方库)呢
2020/10/20 Python
祖国在我心中演讲稿500字
2014/05/04 职场文书
垃圾桶标语
2014/06/24 职场文书
销售活动策划方案
2014/08/26 职场文书
党员三严三实对照检查材料
2014/10/13 职场文书
会议接待欢迎词范文
2015/01/26 职场文书
通讯稿格式及范文
2015/07/22 职场文书
Vue h函数的使用详解
2022/02/18 Vue.js