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 相关文章推荐
javascript OFFICE控件测试代码
Dec 08 Javascript
Extjs单独定义各组件的实例代码
Jun 25 Javascript
javascript获取鼠标位置部分的实例代码(兼容IE,FF)
Aug 05 Javascript
Javascript 是你的高阶函数(高级应用)
Jun 15 Javascript
基于javascript实现单选及多选的向右和向左移动实例
Jul 25 Javascript
javascript下拉列表菜单的实现方法
Nov 18 Javascript
JavaScript常用字符串与数组扩展函数小结
Apr 24 Javascript
Angularjs根据json文件动态生成路由状态的实现方法
Apr 17 Javascript
Vue单页应用引用单独的样式文件的两种方式
Mar 30 Javascript
Vue的transition-group与Virtual Dom Diff算法的使用
Dec 09 Javascript
解决vue+elementui项目打包后样式变化问题
Aug 03 Javascript
uni-app 微信小程序授权登录的实现步骤
Feb 18 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 木马攻击防御技巧
2009/06/13 PHP
PHP实现根据银行卡号判断银行
2015/04/29 PHP
浅析php-fpm静态和动态执行方式的比较
2016/11/09 PHP
IE6与IE7中,innerHTML获取param的区别
2009/03/15 Javascript
JavaScript(js)设置默认输入焦点(focus)
2012/12/28 Javascript
window.open关于浏览器拦截问题分析及解决方法
2013/02/05 Javascript
Javascript 实现的数独解题算法网页实例
2013/10/15 Javascript
借助javascript代码判断网页是静态还是伪静态
2014/05/05 Javascript
JavaScript参数个数可变的函数举例说明
2014/10/10 Javascript
node.js中的forEach()是同步还是异步呢
2015/01/29 Javascript
Backbone.js框架中简单的View视图编写学习笔记
2016/02/14 Javascript
JS 数字转换为大写金额的简单实例
2016/08/04 Javascript
js 获取图像缩放后的实际宽高,位置等信息
2017/03/07 Javascript
webpack开发环境和生产环境的深入理解
2018/11/08 Javascript
Vue实现点击显示不同图片的效果
2019/08/10 Javascript
微信小程序轮播图swiper代码详解
2020/12/01 Javascript
python 查找文件夹下所有文件 实现代码
2009/07/01 Python
python使用SMTP发送qq或sina邮件
2017/10/21 Python
itchat接口使用示例
2017/10/23 Python
tensorflow学习笔记之mnist的卷积神经网络实例
2018/04/15 Python
解决pip install的时候报错timed out的问题
2018/06/12 Python
详解python while 函数及while和for的区别
2018/09/07 Python
对python:print打印时加u的含义详解
2018/12/15 Python
python字典排序的方法
2019/10/12 Python
Django choices下拉列表绑定实例
2020/03/13 Python
python实现图片转换成素描和漫画格式
2020/08/19 Python
纯CSS3代码实现switch滑动开关按钮效果
2016/08/30 HTML / CSS
德国婴儿服装和婴儿用品购买网站:Baby Sweets
2019/12/08 全球购物
最新奶茶店创业计划书
2014/01/25 职场文书
《莫泊桑拜师》教学反思
2014/04/23 职场文书
产品推广策划方案
2014/05/10 职场文书
有限公司股东合作协议书
2014/10/29 职场文书
服务整改报告
2014/11/06 职场文书
中学教师个人总结
2015/02/10 职场文书
社区安置帮教工作总结2015
2015/05/20 职场文书
MySQL派生表联表查询实战过程
2022/03/20 MySQL