前言 今年接触了一个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 开发经验整理的更多相关文章

  1. JavaScript 精髓整理篇之一(对象篇)postby:http://zhutty.cnblogs.com

    废话篇头: 由于工作关系,所以写博文的时间有那么点~~,其实是输入法太懒了,都是输入法的错~~ 这一系列的博客将总结所有关于JavaScript语言的精髓,适合0基础到大师级别人物阅读. <Ja ...

  2. javascript收集整理

    //特殊字符去掉 function check(obj){ var test=obj.value.match(/[^A-Za-z0-9]/g);//这条语句表示在输入文本中是否包含不符合要求的字符,如 ...

  3. JavaScript基础整理(1)

    最近读了<JavaScript权威指南>这本书,闲来无事对自认为重要的知识做了些整理,方便以后查阅. JavaScript中的最重要的类型就是对象,对象是名/值对的集合,或字符串到值映射的 ...

  4. javascript运算符整理

    说起运算符,基本上各类编程语言中都会涉及,使用方法大同小异.今天在这里以javascript做简单的整理. 总得来说运算符还是比较的多,大致可以分为以下几种类型: 一元运算符 位运算符 布尔运算符 乘 ...

  5. JavaScript笔记整理

    整理一篇工作中的JavaScript脚本笔记,不定时更新,笔记来自网上资料或者自己经验归纳. (1) 获取Url绝对路径 function getUrlRelativePath() { var url ...

  6. WEB前端常用JavaScript代码整理

    文章目录 html代码用JS动态加载进页面 JS判断用户访问的是PC还是mobile或者微信浏览器 判断浏览器的简单有效方法 点击某个div区域之外,隐藏该div 如何在手机上禁止浏览器的网页滚动 改 ...

  7. JavaScript学习整理(转载)

    JavaScript的学习整理(一) 目录: 1.换皮肤功能2.显示/隐藏(点击切换)3.显示/隐藏(onmouseover/onmouseout)4.选项卡5.全选/不选/反选(checkbox)6 ...

  8. 常用JavaScript正则表达式整理

    在表单验证中,正则表达式书写起来特别繁琐,本文整理了15个常用的JavaScript正则表达式,其中包括用户名.密码强度.整数.数字.电子邮件地址(Email).手机号码.身份证号.URL地址. IP ...

  9. 《你不知道的JavaScript》整理(四)——原型

    一.[[Prototype]] JavaScript中的对象有一个特殊的[[Prototype]]内置属性,其实就是对于其他对象的引用. var myObject = { a: 2 }; myObje ...

随机推荐

  1. MSSQL 日期操作函数 总结

    set ANSI_NULLS ON set QUOTED_IDENTIFIER ON go ALTER FUNCTION [dbo].[ufn_getDateOfWeek] (@Date Dateti ...

  2. [Daily] 2014-4-22

    KEEP GOING Think more product when face difference Check value null when insert/remove/update/add ch ...

  3. 普林斯顿大学算法课 Algorithm Part I Week 3 自我总结

    要熟练掌握比较器Comparator public final Comparator<T> MY_COMPARATOR = new myComparator(); //定义比较器 .... ...

  4. Jquery操作-(多种实例)--未完

    一.Jquery简介 定义 jQuery创始人是美国John Resig,是优秀的Javascript框架: jQuery是一个轻量级.快速简洁的javaScript库. jQuery对象 jQuer ...

  5. How to change a product dropdown attribute to a multiselect in Magento

    First, update the attribute input type to multiselect: UPDATE eav_attribute SET entity_type_id ', at ...

  6. 嵌入式OS入门笔记-以RTX为案例:六.RTX的任务调度

    嵌入式OS入门笔记-以RTX为案例:六.RTX的任务调度 上一篇笔记介绍了一些绕开排程器(或调度程序,scheduler)来进行时间管理的一些小方法.这一篇详细介绍RTX的任务调度原理. RTX主要有 ...

  7. Sublime-text 自己定义快捷键攻略

    好吧.我承认今天非常悲剧,本来上午就写好了这篇博文,公布之后,在自己的博文里怎么也找不到. 所以如今又又一次写了一份.希望大家能顶一下吧...Nothing is better than your s ...

  8. 使用Cloudsim实现基于多维QoS的资源调度算法之中的一个:配置Cloudsim环境

    Cloudsim是一款开源的云计算仿真软件,它继承了网格计算仿真软件Gridsim的编程模型,支持云计算的研究和开发.它是一个自足的支持数据中心.服务代理人.调度和分配策略的平台,支持大型云计算的基础 ...

  9. A Guide to the Multiboot Process

    A Guide to the Multiboot Process The XP and Vista boot process in general.The Windows dual and multi ...

  10. 在webstrorm中配置好es6 babel

    第一步,新建一个项目,我这里建立了基于express 的node项目 第二步:将JavaScript语言版本切换为ECMAScript6 点击File —>settings,弹出设置框.把js的 ...