.NET解决JS引用 全局污染等问题

在需要引用的ASPX页面上加上这句话

<!--#include file="/js/inc.html"-->

创建一个HTML页面,结构如下

<script src="/js/ArrayList.js"></script>

<script src="/js/main.js"></script>

通过include引用HTML页面,HTML页面来引用JS文件来控制JS文件的引用。

定义JS代码

var main = {};

main=function(){};

main.ListPage=function(page){};

利用JS闭包的机制,可以解决JS的全局变量污染问题

时间: 2024-11-03 21:14:19

.NET解决JS引用 全局污染等问题的相关文章

JS函数的应用 --- 立即执行函数、全局污染、闭包、沙箱、递归

一.立即执行函数 --- IIFE 立即执行函数的集中表现形式: 立即执行函数的特点: 二.JS 全局污染 为什么会造成全局污染? JS 没有块级作用域,在函数外定义的变量,均为全局变量: 全局变量过多会削弱程序的灵活性,增大了模块之间的耦合度,多人协作开发会导致变量冲突,造成环境污染. 耦合度:即模块之间的依赖关系:控制关系.调用关系.数据传递关系: 划分模块准则:高内聚低耦合 如何解决全局污染? 1. 命名空间 2. 立即执行函数(里面创建的变量,为局部变量) (function(){})(

使用call、apply和bind解决js中烦人的this,事件绑定时的this和传参问题

1.什么是this 在JavaScript中this可以是全局对象.当前对象或者任意对象,这完全取决于函数的调用方式,this 绑定的对象即函数执行的上下文环境(context). 为了帮助理解,让我们来一起看一段代码: // 作为对象方法调用 var test = { a : 5, b : 6, sum : function () { return this.a + this.b; // 此处this = test } } alert(test.sum()); // 11 作为对象调用时thi

bower解决js的依赖管理备记

一个新的web项目开始,我们总是很自然地去下载需要用到的js类库文件,比如jQuery,去官网下载名为jquery-1.10.2.min.js文件,放到我们的项目里.当项目又需要bootstrap的时候,我们会重复刚才的工作,去bootstrap官网下载对应的类库.如果bootstrap所依赖的jQuery并不是1.10.2,而是2.0.3时,我们会再重新下载一个对应版本的jQuery替换原来的. 包管理是个复杂的问题,我们要知道谁依赖谁,还要明确哪个版本依赖哪个版本.这些对于开发人员来说,负担

js引用后界面无效

接触到了一个新的系统,根据用户的需求,加上视频的滚动条来实现根据滚动截图的效果,在查找一番资料后,通过简单的比较,最后选择使用EasyUI的slider滚动条来实现这个功能,把EasyUI的demo下载下来后,把domo的网页copy到项目中,并引入对应的css和js,一切准备就绪后,运行页面,发现页面中的滚动条中没有滚动块, 并且上传视频的功能也失效了,我没有改动任何其他功能的代码,但是就出现这个的问题,这究竟是什么原因呢?苦于一时无法找到解决问题的办法,简单备份了一下,使用svn还原了一下最

基于md5的解决js,css缓存问题for django

一.常见的解决方案 js,css更新的时候,由于浏览器的缓存机制,可能导致引用老的js,css而引起错误.以往常见的解决方法有两种: 1.对js,css加版本控制,例如:jquery.min.js?v=xx.xxx.xx 此种方法存在的问题是需要对版本控制进行维护,比较麻烦 2.对js,css加时间戳 此种方法存在的问题是当js或css,更改后又被还原,但是时间戳已经更改,而导致浏览器需要重新下载js,css. 二.md5解决js,css缓存问题的原理 根据js,css的内容生成一个字符串,当j

javascript防止变量全局污染

前段时间封装了一个函数,当时考虑的没那么多,最近回头看这个封装的函数时发现其实造成了全局污染.原先的函数是这样的: function interval(fn, ms){ !this.fn?(this.fn = fn,this.ms = ms,this.step = 0):null this.step++ this.step%(this.ms * 60) == 0?this.fn():null requestAnimationFrame(interval) } interval(() => { c

使用node爬虫,爬取指定排名网站的JS引用库

前期准备 本爬虫将从网站爬取排名前几的网站,具体前几名可以具体设置,并分别爬取他们的主页,检查是否引用特定库. github地址 所用到的node主要模块 express 不用多说 request http模块 cheerio 运行在服务器端的jQuery node-inspector node调试模块 node-dev 修改文件后自动重启app 关于调试Node 在任意一个文件夹,执行node-inspector,通过打开特定页面,在页面上进行调试,然后运行app,使用node-dev app

js引用jquery问题

jquery本身就是一个JavaScript函数库,所以可以直接在js文件中写jquery代码. 但需要注意:jquery的使用需要引用官方的jquery.js文件. 关键:独立的js文件不需要引用任何jquery.js文件,只需要在相应的html网页中引用jquery.js和.js文件,jquery文件引用必须在.js文件之前.如下图: html文件: <script src="js/jquery-1.12.4.js"></script> //引用jquery

使用live delegate on来解决js对后加载的html失效的问题

今天要写一个前端的东西.每多学一点知识,就可以少写几行代码.几十行代码.几个文件量的代码--这是真的.一直对前端的研究都是停留在遇到问题百度谷歌答案的做法.今天遇到这样一个问题:已经写好的js代码,对ajax加载的html失效了. 用好几组关键字都没有找到答案,最后这组帮我找到了解答的办法: javascript not work on ajax content 很幸运,我来到了:http://stackoverflow.com/questions/10161938/jquery-functio