JavaScript 开发经验整理
前言 今年接触了一个B/S的项目,总结了一些JavaScript开发经验,整理些有用的内容与大家分享。 本文会持续更新...
1、实现代码访问的控制
随着项目JavaScript代码库扩大,本应被控制在私有作用域的函数与变量将会暴漏的越来越多,这时你的全局作用域被“污染”的可能性就会越来越大。这不仅会导致命名冲突,也会为BUG提供温床。因此,我们需要编写自包含的、不透明的JavaScript代码,它不会向外界暴漏内部的细节,也不会与现有的框架与脚本库发生冲突。事实上这正是大规模编程的主要要求
示例如下:
//定义一个obj的对象
var obj = (function () { var privateField = 42;
var publicField = 'foobar'; //obj对象 私有方法
function processInternals() {
alert('私有的:' + privateField);
}
//obj对象 私有方法
function run() {
processInternals();
alert('私有的:' + privateField);
alert('公共的:' + publicField);
} return {
publicField: publicField, //返回名称为publicField 私有变量
run: run //返回名称为run私有方法
};
})();//注意此处增加(); obj.run();//调用obj对象run()方法
obj.publicField;// 调用obj对象public属性 obj.processInternals();//访问私有方法,为NULL
obj.privateField;//访问私有属性,为NULL
2、动态加载Javascript文件
传统的<script>标签加载js文件很方便只需加入网页即可,但是存在严重的缺陷。
1、严格的读取顺序;2、性能问题,多个js文件同步加载页面会堵塞,页面相应缓慢;
为了解决以上问题可以使用DOM方法,动态加载javascript文件。注:DOM动态加载的js文件,其中事件和相关绑定也会自动绑定;
示例如下:
function loadScript(url) {
var script = document.createElement("script");//获取script dom对象
script.type = "text/javascript";//声明类型
script.src = url;
document.body.appendChild(script);//动态加载js文件
}
3、AJAX
4、Javascript 调试技巧
5、DOM
6、web性能优化
7、WebSocket
8、HTTP和HTTPS
9、...
JavaScript 开发经验整理的更多相关文章
- JavaScript 精髓整理篇之一(对象篇)postby:http://zhutty.cnblogs.com
废话篇头: 由于工作关系,所以写博文的时间有那么点~~,其实是输入法太懒了,都是输入法的错~~ 这一系列的博客将总结所有关于JavaScript语言的精髓,适合0基础到大师级别人物阅读. <Ja ...
- javascript收集整理
//特殊字符去掉 function check(obj){ var test=obj.value.match(/[^A-Za-z0-9]/g);//这条语句表示在输入文本中是否包含不符合要求的字符,如 ...
- JavaScript基础整理(1)
最近读了<JavaScript权威指南>这本书,闲来无事对自认为重要的知识做了些整理,方便以后查阅. JavaScript中的最重要的类型就是对象,对象是名/值对的集合,或字符串到值映射的 ...
- javascript运算符整理
说起运算符,基本上各类编程语言中都会涉及,使用方法大同小异.今天在这里以javascript做简单的整理. 总得来说运算符还是比较的多,大致可以分为以下几种类型: 一元运算符 位运算符 布尔运算符 乘 ...
- JavaScript笔记整理
整理一篇工作中的JavaScript脚本笔记,不定时更新,笔记来自网上资料或者自己经验归纳. (1) 获取Url绝对路径 function getUrlRelativePath() { var url ...
- WEB前端常用JavaScript代码整理
文章目录 html代码用JS动态加载进页面 JS判断用户访问的是PC还是mobile或者微信浏览器 判断浏览器的简单有效方法 点击某个div区域之外,隐藏该div 如何在手机上禁止浏览器的网页滚动 改 ...
- JavaScript学习整理(转载)
JavaScript的学习整理(一) 目录: 1.换皮肤功能2.显示/隐藏(点击切换)3.显示/隐藏(onmouseover/onmouseout)4.选项卡5.全选/不选/反选(checkbox)6 ...
- 常用JavaScript正则表达式整理
在表单验证中,正则表达式书写起来特别繁琐,本文整理了15个常用的JavaScript正则表达式,其中包括用户名.密码强度.整数.数字.电子邮件地址(Email).手机号码.身份证号.URL地址. IP ...
- 《你不知道的JavaScript》整理(四)——原型
一.[[Prototype]] JavaScript中的对象有一个特殊的[[Prototype]]内置属性,其实就是对于其他对象的引用. var myObject = { a: 2 }; myObje ...
随机推荐
- poj1503---大数加法
先讲一种错误的做法:WA了n次,大神一定帮我看一下//看到有说数组大小开到250,我改了之后还是不//思路是将arr这个数组的每一行附上输入的值,然后求每列所有数之和,当然进位 //maxlen记录这 ...
- Windows下使用XManager访问Ubuntu 11.04的设置方法
1.Download the attached file and upload it to the server. And, enter the following command to update ...
- magento 获取attribute的所有option
$attribute = Mage::getSingleton('eav/config')->getAttribute('catalog_product', 'color');if ($attr ...
- 在mangento后台调用wysiwyg编辑器
在mangento后台调用操蛋的wysiwyg编辑器: 1.在头部加载TincyMCE protected function _prepareLayout() { parent::_prepa ...
- 使用CocoaPods找不到头文件解决方法
Project->Info->Configurations
- HashMap 的遍历key与value的方法
HashMap最经常使用的使用方法是依据key增删改查value,有时候会须要知道一个HashMap有多少个keys以及这些keys都是什么,能够用以下的代码实现. 方法1: Map map = ne ...
- jQuery特效 隔行变色
1.通过使用onmouseover onmouseout方法 2.变色使用background-color(css)属性 3.变色的标签是td(tr仅仅能使用事件,颜色样式不起作用) 第一种方法 使用 ...
- CSS 垂直居中的5种实现方法
利用 CSS 来实现对象的垂直居中有许多不同的方法,比较难的是选择那个正确的方法.我下面说明一下我看到的好的方法和怎么来创建一个好的居中网站. 使用 CSS 实现垂直居中并不容易.有些 ...
- javascript高级知识分析——灵活的参数
代码信息来自于http://ejohn.org/apps/learn/. 使用数量可变的参数对编程很有好处 function merge(root){ for(i = 0 ; i < argum ...
- $(this) 和 this
在使用 jQuery 时,$(this) 和 this 具体指: this :是当前 DOM 对象: $(this) 是jQuery对象: 例子: <input type="text& ...