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 相关文章推荐
JS应用之禁止抓屏、复制、打印
Feb 21 Javascript
javascript跟随滚动效果插件代码(javascript Follow Plugin)
Aug 03 Javascript
纯Javascript实现Windows 8 Metro风格实现
Oct 15 Javascript
整理的比较全的event对像在ie与firefox浏览器中的区别
Nov 25 Javascript
jQuery插件jcrop+Fileapi完美实现图片上传+裁剪+预览的代码分享
Apr 22 Javascript
jQuery实现默认是闭合的FAQ展开效果菜单
Sep 14 Javascript
详解 javascript中offsetleft属性的用法
Nov 11 Javascript
jQuery的文档处理程序详解
May 10 Javascript
AngularJS 基础ng-class-even指令用法
Aug 01 Javascript
将JSON字符串转换成Map对象的方法
Nov 30 Javascript
Node.js利用debug模块打印出调试日志的方法
Apr 25 Javascript
深究AngularJS中ng-drag、ng-drop的用法
Jun 12 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反序列化中过滤函数使用不当导致的对象注入问题
2020/02/15 PHP
DEFER怎么用?
2006/07/01 Javascript
jquery multiSelect 多选下拉框
2010/07/09 Javascript
最新28个很棒的jQuery 教程
2011/05/28 Javascript
一款Jquery 分页插件的改造方法(服务器端分页)
2011/07/11 Javascript
jquery submit ie6下失效的原因分析及解决方法
2013/11/15 Javascript
JavaScript编程中的Promise使用大全
2015/07/28 Javascript
基于JavaScript制作霓虹灯文字 代码 特效
2015/09/01 Javascript
Angular表单验证实例详解
2016/10/20 Javascript
JS自定义混合Mixin函数示例
2016/11/26 Javascript
基于Vue.js实现简单搜索框
2020/03/26 Javascript
Html5 js实现手风琴效果
2020/04/17 Javascript
ReactNative列表ListView的用法
2017/08/02 Javascript
vue+webpack 打包文件 404 页面空白的解决方法
2018/02/28 Javascript
关于jquery layui弹出层的使用方法
2018/04/21 jQuery
微信小程序在地图选择地址并返回经纬度简单示例
2018/12/03 Javascript
使用webpack搭建vue项目实现脚手架功能
2019/03/15 Javascript
layui下拉框获取下拉值(select)的例子
2019/09/10 Javascript
js生成1到100的随机数最简单的实现方法
2020/02/07 Javascript
[02:12]2019完美世界全国高校联赛(春季赛)报名开启
2019/03/01 DOTA
Fiddler如何抓取手机APP数据包
2016/01/22 Python
对Python函数设计规范详解
2019/07/19 Python
python str字符串转uuid实例
2020/03/03 Python
Python基于xlutils修改表格内容过程解析
2020/07/28 Python
Python Selenium异常处理的实例分析
2021/02/28 Python
CSS3使用transition实现的鼠标悬停淡入淡出
2015/01/09 HTML / CSS
皮尔·卡丹巴西官方商店:Pierre Cardin
2017/07/21 全球购物
Why do we need Unit test
2013/01/03 面试题
介绍一下JMS编程步骤
2015/09/22 面试题
主题婚礼策划方案
2014/02/10 职场文书
党员评议表自我评价范文
2014/10/20 职场文书
2015年乡镇残联工作总结
2015/05/13 职场文书
企业管理制度设计时要注意的几种“常见病”!
2019/04/19 职场文书
Java使用JMeter进行高并发测试
2021/11/23 Java/Android
Apache Linkis 中间件架构及快速安装步骤
2022/03/16 Servers
win10滚动条自动往上跑怎么办?win10滚动条自动往上跑的解决方法
2022/08/05 数码科技