JavaScript 对象链式操作测试代码


Posted in Javascript onApril 25, 2010

虽然现在慢慢减少了对jQuery的使用(项目上还是用,效率高点。平时基本不用了),希望从而减少对jQuery的依赖度。
但是这链式操作的方式实在吸引人(貌似现在不少新库都采用了链式操作)。
新手无畏嘛,所以写了以下代码。主要是避免以后又忘了,呵呵。

window.k = function() { 
return new k.fn.init(arguments); 
} 
k.fn = k.prototype = { 
init:function() { 
this.length = 0; 
//var args = Array.prototype.slice.call(arguments,0); 
Array.prototype.push.apply(this,arguments[0]); 
return this; 
}, 
show:function() { 
console.log(Array.prototype.slice.call(this,0).join("$")); 
return this; 
}, 
hide:function() { 
console.log(this); 
return this; 
} 
} 
k.fn.init.prototype = k.fn; 
console.log(k("0",1,2,3,4,5).show().hide());

这只是进行了链式操作。但是在firbug下可以看到jQuery对象返回的是数组/类数组。要实现这个却不知道怎么办好。。

总不能让k.fn.prototype = new Array()吧。真要看jQuery源代码还真是有点累。。

Javascript 相关文章推荐
自己实现string的substring方法 人民币小写转大写,数字反转,正则优化
Sep 02 Javascript
jquery实现简单的拖拽效果实例兼容所有主流浏览器(优化篇)
Jun 28 Javascript
浅谈重写window对象的方法
Dec 29 Javascript
jquery div模态窗口的简单实例
May 28 Javascript
js Canvas绘制圆形时钟效果
Feb 17 Javascript
详解angularjs利用ui-route异步加载组件
May 21 Javascript
js实现每日签到功能
Nov 29 Javascript
JavaScript常见鼠标事件与用法分析
Jan 03 Javascript
vue自定义指令实现方法详解
Feb 11 Javascript
详解微信小程序实现跑马灯效果(附完整代码)
Apr 29 Javascript
vue实现评论列表功能
Oct 25 Javascript
JS实现网页端猜数字小游戏
Mar 06 Javascript
网页上的Javascript编辑器和代码格式化
Apr 25 #Javascript
jQuery温习篇 强大的JQuery选择器
Apr 24 #Javascript
javascript 二分法(数组array)
Apr 24 #Javascript
JS判断是否为数字,是否为整数,是否为浮点数的代码
Apr 24 #Javascript
JavaScript 比较时间大小的代码
Apr 24 #Javascript
google 搜索框添加关键字实现代码
Apr 24 #Javascript
javascript XMLHttpRequest对象全面剖析
Apr 24 #Javascript
You might like
PHP 文件上传源码分析(RFC1867)
2009/10/30 PHP
php权重计算方法代码分享
2014/01/09 PHP
搜索附近的人PHP实现代码
2018/02/11 PHP
php闭包中使用use声明变量的作用域实例分析
2018/08/09 PHP
关于图片验证码设计的思考
2007/01/29 Javascript
JavaScript开发时的五个注意事项
2007/12/08 Javascript
为JavaScript添加重载函数的辅助方法
2010/07/04 Javascript
分享20款好玩的jQuery游戏
2011/04/17 Javascript
一个页面放2段图片滚动代码出现冲突的问题如何解决
2012/12/21 Javascript
jquery右下角自动弹出可关闭的广告层
2015/05/08 Javascript
Javascript类型转换的规则实例解析
2016/02/23 Javascript
jQuery属性选择器用法示例
2016/09/09 Javascript
js手动播放图片实现图片轮播效果
2016/09/17 Javascript
webpack构建react多页面应用详解
2017/09/15 Javascript
vue中动态绑定表单元素的属性方法
2018/02/23 Javascript
微信小程序使用wxParse解析html的实现示例
2018/08/30 Javascript
老生常谈JavaScript获取CSS样式的方法(兼容各浏览器)
2018/09/19 Javascript
微信小程序实现的动态设置导航栏标题功能示例
2019/01/31 Javascript
详解Howler.js Web音频播放终极解决方案
2020/08/23 Javascript
openlayers实现图标拖动获取坐标
2020/09/25 Javascript
[37:50]VP vs TNC Supermajor小组赛B组 BO3 第一场 6.2
2018/06/03 DOTA
python抓取京东价格分析京东商品价格走势
2014/01/09 Python
Python实现的数据结构与算法之队列详解
2015/04/22 Python
对python模块中多个类的用法详解
2019/01/10 Python
Python实现KNN(K-近邻)算法的示例代码
2019/03/05 Python
Python3 合并二叉树的实现
2019/09/30 Python
pytorch 图像预处理之减去均值,除以方差的实例
2020/01/02 Python
墨尔本最受欢迎的复古风格品牌:Princess Highway
2018/12/21 全球购物
加拿大的标志性百货公司:Hudson’s Bay(哈得逊湾)
2019/09/03 全球购物
serialVersionUID具有什么样的特征
2014/02/20 面试题
大学团支书的自我评价分享
2013/12/14 职场文书
2014年导购员工作总结
2014/11/18 职场文书
幼师辞职信范文大全
2015/05/12 职场文书
vue+elementui 实现新增和修改共用一个弹框的完整代码
2021/06/08 Vue.js
React列表栏及购物车组件使用详解
2021/06/28 Javascript
Go语言测试库testify使用学习
2022/07/23 Golang