javascript学习(一)构建自己的JS库


Posted in Javascript onJanuary 02, 2013

前言
库是一个饱受争议的热门话题。一种观点认为它是一种非常棒的工具,是任何开发者都不可或缺的;另一种观点则认为在不理解库的内部工作原理的情况下对库形成依赖,会助长懒惰的风气从而导致开发者素质下降。但是不管怎么样,好像每个人都赞同编写自己的库,况且把自己日常用到的东西合并到一起本身就是一件有意义的事情。

下面我们开始建立自己的JS库,并编写两个自己的方法

//作者: 
//时间:2012-11-13 
(function(){ window['LS']={}; 
function $(){ 
var elements =new Array(); 
var element; 
for(var i=0;i<arguments.length;i++){ 
if(typeof(arguments[i])=="string"){ 
element=document.getElementById(arguments[i]); 
} 
if(arguments.length==1){ 
return element; 
} 
elements.push(element); 
} 
return elements; 
} 
window['LS']['$']=$; 
function getElementByClassName(className,tag){ 
var allTags=document.getElementsByTagName(tag); 
var matchingElements=new Array(); 
className=className.replace(/\-/g,"\\-"); //不明白这句话是什么意思。 
var regex=new RegExp("(^|\\s)*"+className+"(\\s|$)"); 
var element; 
for(var i=0;i<allTags.length;i++){ 
element=allTags[i]; 
if(regex.test(element.className)){ //这个element.className也不明白是什么意思 
matchingElements.push(element); 
} 
} 
return matchingElements; 
} 
window['LS']['getElementByClassName']=getElementByClassName; 
})() //如果不加()不能执行

本人是刚开始接触javascript,里面注释部分是我不懂的地方,也希望高人能指点一下。
Javascript 相关文章推荐
js电信网通双线自动选择技巧
Nov 18 Javascript
js给网页加上背景音乐及选择音效的方法
Mar 03 Javascript
Jquery动态添加输入框的方法
May 29 Javascript
javascript html实现网页版日历代码
Mar 08 Javascript
AngularJS表单详解及示例代码
Aug 17 Javascript
基于jQuery实现中英文切换导航条效果
Sep 18 Javascript
Bootstrap模态框案例解析
Mar 05 Javascript
Node.js在图片模板上生成二维码图片并附带底部文字说明实现详解
Aug 07 Javascript
JS实现json数组排序操作实例分析
Oct 28 Javascript
Vue防止白屏添加首屏动画的实例
Oct 31 Javascript
浅谈Node新版本13.2.0正式支持ES Modules特性
Nov 25 Javascript
Vue父子传递实例讲解
Feb 14 Javascript
jQuery常见开发技巧详细整理
Jan 02 #Javascript
js显示时间 js显示最后修改时间
Jan 02 #Javascript
通过JS自动隐藏手机浏览器的地址栏实现原理与代码
Jan 02 #Javascript
js 回车提交表单两种实现方法
Dec 31 #Javascript
event.currentTarget与event.target的区别介绍
Dec 31 #Javascript
jQuery $.data()方法使用注意细节
Dec 31 #Javascript
JavaScript 盒模型 尺寸深入理解
Dec 31 #Javascript
You might like
PHP管理内存函数 memory_get_usage()使用介绍
2012/09/23 PHP
在WordPress中实现发送http请求的相关函数解析
2015/12/29 PHP
Yii框架操作cookie与session的方法实例详解
2019/09/04 PHP
picChange 图片切换特效的函数代码
2010/05/06 Javascript
收集的10个免费的jQuery相册
2011/02/26 Javascript
JS正则中的RegExp对象对象
2012/11/07 Javascript
ajax页面无刷新 IE下遭遇Ajax缓存导致数据不更新的问题
2012/12/11 Javascript
Blocksit插件实现瀑布流数据无限( 异步)加载
2014/06/20 Javascript
谈一谈javascript闭包
2016/01/28 Javascript
老生常谈JavaScript 正则表达式语法
2016/08/20 Javascript
详解如何让InstantClick兼容MathJax、百度统计等
2017/09/12 Javascript
深入理解node.js http模块
2018/01/24 Javascript
详解给Vue2路由导航钩子和axios拦截器做个封装
2018/04/10 Javascript
Vue 用Vant实现时间选择器的示例代码
2019/10/25 Javascript
JS获取当前时间戳方法解析
2020/08/29 Javascript
[04:19]完美世界携手游戏风云打造 卡尔工作室模型介绍篇
2013/04/24 DOTA
[17:13]DOTA2 HEROS教学视频教你分分钟做大人-斯拉克
2014/06/13 DOTA
[42:32]VP vs RNG 2019国际邀请赛淘汰赛 败者组 BO3 第一场 8.21.mp4
2020/07/19 DOTA
wxPython定时器wx.Timer简单应用实例
2015/06/03 Python
Python编程产生非均匀随机数的几种方法代码分享
2017/12/13 Python
Tensorflow之构建自己的图片数据集TFrecords的方法
2018/02/07 Python
pycharm使用matplotlib.pyplot不显示图形的解决方法
2018/10/28 Python
Python画图实现同一结点多个柱状图的示例
2019/07/07 Python
django框架单表操作之增删改实例分析
2019/12/16 Python
Matplotlib绘制雷达图和三维图的示例代码
2020/01/07 Python
python 实现任务管理清单案例
2020/04/25 Python
如何以Winsows Service方式运行JupyterLab
2020/08/30 Python
优秀毕业生求职推荐信范文
2013/11/21 职场文书
策划主管的工作职责
2013/11/24 职场文书
竞聘上岗演讲稿范文
2014/01/10 职场文书
自主招生学校推荐信
2014/09/26 职场文书
个人政风行风自查自纠报告
2014/10/21 职场文书
2015年全国保险公众宣传日活动方案
2015/05/06 职场文书
调解协议书范本
2016/03/21 职场文书
手把手教你怎么用Python实现zip文件密码的破解
2021/05/27 Python
Java中API的使用方法详情
2022/04/06 Java/Android