手机
当前位置:查字典教程网 >编程开发 >Javascript教程 >浅析Javascript使用include/require
浅析Javascript使用include/require
摘要:1.javascriptincludeJavascript没有include语句有时挺讨厌,特别是脚本和脚本之间存在依存的关系,你根本就不能...

1. javascript include

Javascript 没有 include 语句有时挺讨厌, 特别是脚本和脚本之间存在依存的关系, 你根本就不能动态的去控制加载脚本, 一般来说最简单的 include 基本就是这样的, 当然我们这个使用了 jQuery 来进行请求脚本.

复制代码 代码如下:

include: function (jsurl) {

if (jsurl == null || typeof(jsurl) != 'string') return;

var js = document.createElement('script');

js.type = 'text/javascript';

js.charset = 'utf-8';

js.src = jsurl;

$.ajaxSetup({ cache : true });

$('head').append(js);

//$.getScript(jsurl);

}

基本用法

需要注意的是该函数其实在发送GET请求的事情是 jQuery.ajax 的 getScript() 来处理的, 但是在GET后的处理和 $.getScript() 不同, 因此导致使用方法会不一样, getScript() 一般需要把有依赖的函数写到它的回调函数中去, 如:

$.getScript('some.js', function() {

// 做写依赖 some.js文件的事情.

});

而我们这里的 include 不需要这么写, 而是直接:

include('some.js');

// 这里可以直接写依赖 some.js 文件中定义的函数

开启缓存

另外就是关于文件缓存, 默认情况下 $.getScript 是会在 url 后面加上一个时间戳, 使得在第二次请求的时候不让浏览器去读取缓存文件, 如果我们 getScript("some.js") , 最后在请求的时候会变成 GET some.js?_23432434534235 之类的, 这是一种强制不缓存的策略, 在开发阶段是比较好的, 但到了生产阶段, 会导致用户的浏览器每次都不缓存我们的js脚本, 这对效率是很大的影响, 我们应该自己在js脚本后面自己加上版本戳, 比如 some.js?v=1 , 而不是使用每次都会变的时间戳, 所以需要使用:

$.ajaxSetup({ cache : true });

这样就会关闭jQuery自动在url后面加上时间戳的特性.

requireJs

如果你的脚本大量的存在互相依赖关系, 而又需要动态的决定加载哪些脚本, 那么我推荐的是使用requirejs .

它的基本用法是:

require(["some/module", "a.js", "b.js"], function(someModule) {

// do something

});

它有一个要求就是你的前端js是作为模块式的开发, 在前端逻辑比较复杂的话, 使用模块式来进行前端开发应该是种不错的选择, 而关于JS的模块式开发在今后文章再专门谈, 这里只简单介绍一下, 如果对这个方面感兴趣的可以到requireJs官网去看看.

【浅析Javascript使用include/require】相关文章:

Javascript - HTML的request类

javascript使用Promise对象实现异步编程

JavaScript中for循环的使用详解

JavaScript的RequireJS库入门指南

JavaScript中的函数嵌套使用

JavaScript使用技巧精选

浅谈JavaScript中的Math.atan()方法的使用

javascript操作表格

在JavaScript应用中使用RequireJS来实现延迟加载

浅谈Javascript线程及定时机制

精品推荐
分类导航