Welcome 微信登录

首页 / 脚本样式 / JavaScript

javascript性能优化之DOM交互操作实例分析

javascript性能优化之DOM交互操作实例分析

本文实例讲述了javascript性能优化之DOM交互操作技巧。分享给大家供大家参考,具体如下:在javascript各个方面,DOM毫无疑问是最慢的一部分。DOM操作与交互要耗费大量时间,因为它们往往需要重新渲染整个页面或者某一部分。理解如何优化与DOM的交互可以极大提高脚本完成的速度。1、最小化DOM更新看下面例子:var list = document.getElementById("ul");for (var i=0; i < 10; i++...
JS如何判断是否为ie浏览器的方法(包括IE10、IE11在内)

JS如何判断是否为ie浏览器的方法(包括IE10、IE11在内)

今天在写一个代码复制功能的时候,发现的这个问题,ie11也不支持document.all,看来以后越来越标准了今天碰到一个奇怪的问题,有一个页面,想指定用IE浏览器打开,在VS开发环境没有问题,但部署到服务器上,即使是用IE打开页面,还是提示“仅支持IE”,真是晕啊!!判断是否IE浏览器用的是window.navigator.userAgent,跟踪这个信息,发现在开发环境,识别为IE10,但访问服务器则识别为IE11,但IE11的userAgent里是没...
详解JavaScript基于面向对象之继承

详解JavaScript基于面向对象之继承

一、面相对象继承机制 这个实例使用UML很好的解释了继承机制。 说明继承机制最简单的方式是,利用一个经典的例子就是几何形状。实际上,几何形状只有两种,即椭圆形(是圆形的)和多边形(具有一定数量的边)。圆是椭圆的一种,它只有一个焦点。三角形、矩形和五边形都是多边形的一种,具有不同数量的边。正方形是矩形的一种,所有的边等长。这就构成了一种完美的继承关系,很好的解释了面向对象的继承机制。 在这个例子中,形状是椭圆形和多边形的基类(通常我们也可以叫它父类,所有类都...
详解JavaScript正则表达式之RegExp对象

详解JavaScript正则表达式之RegExp对象

一、RegExp对象概述 RegExp对象表示正则表达式,RegExp是正则表达式的缩写,它是对字符串执行模式匹配的强大工具。RegExp对象用于规定在文本中检索的内容。当您检索某个文本时,可以使用一种模式来描述要检索的内容。RegExp就是这种模式。简单的模式可以是一个单独的字符;更复杂的模式包括了更多的字符,并可用于解析、格式检查、替换等。正则表达式可以规定字符串中的检索位置,以及要检索的字符类型等。二、创建RexExp对象创建正则表达式和创建字符串类...
JavaScript 模块的循环加载实现方法

JavaScript 模块的循环加载实现方法

"循环加载"(circular dependency)指的是,a脚本的执行依赖b脚本,而b脚本的执行又依赖a脚本。// a.jsvar b = require("b");// b.jsvar a = require("a");通常,"循环加载"表示存在强耦合,如果处理不好,还可能导致递归加载,使得程序无法执行,因此应该避免出现。但是实际上,这是很难避免的,尤其是依赖关系复杂的大项目,很容易出现a依赖b,b依赖c,c又依赖a这样的情况。这意味着,模块加载机制...
node.js require() 源码解读

node.js require() 源码解读

2009年,Node.js 项目诞生,所有模块一律为 CommonJS 格式。时至今日,Node.js 的模块仓库 npmjs.com ,已经存放了15万个模块,其中绝大部分都是 CommonJS 格式。这种格式的核心就是 require 语句,模块通过它加载。学习 Node.js ,必学如何使用 require 语句。本文通过源码分析,详细介绍 require 语句的内部运行机制,帮你理解 Node.js 的模块机制。一、require() 的基本用法分...
JavaScript模块化开发之SeaJS

JavaScript模块化开发之SeaJS

前言  SeaJS是一个遵循CommonJS规范的JavaScript模块加载框架,可以实现JavaScript的模块化开发及加载机制。使用SeaJS可以提高JavaScript代码的可读性和清晰度,解决目前JavaScript编程中普遍存在的依赖关系混乱和代码纠缠等问题,方便代码的编写和维护。SeaJS本身遵循KISS(Keep it Simple,Stupid)理念进行开发,后续的几个版本更新也都是吵着这个方向迈进。如何使用Se...
分享Javascript实用方法二

分享Javascript实用方法二

JavaScript一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML(标准通用标记语言下的一个应用)网页上使用,用来给HTML网页增加动态功能。承接上一篇,Objectkeysobject的keys方法能够获取一个给定对象的所有键(key/属性名)并以数组的形式返回。这个方法可以用于键的筛选、匹配等。var basket = {s...
由浅入深讲解Javascript继承机制与simple-inheritance源码分析

由浅入深讲解Javascript继承机制与simple-inheritance源码分析

老生常谈的问题,大部分人也不一定可以系统的理解。Javascript语言对继承实现的并不好,需要工程师自己去实现一套完整的继承机制。下面我们由浅入深的系统掌握使用javascript继承的技巧。1. 直接使用原型链这是最简粗暴的一种方式,基本没法用于具体的项目中。一个简单的demo如下:function SuperType(){this.property = true;}SuperType.prototype.getSuperValue = functio...
js自定义回调函数

js自定义回调函数

背景分析首先看一段js的代码,主要实现添加的时候首先通过异步请求判断是否存在,如果不存在的话,在进行添加操作:function add(url,data) {var isExited = isExited(data); if(!isExited){addRequest(url, data); }}当我添加一个数据的时候,我首先通过判断是否在数据库中存在(当然,如果前后台彻底分离的话,不应该前端进行业务逻辑的判断,前端只应该,用来展示数据),首先,isExi...
JavaScript 七大技巧(二)

JavaScript 七大技巧(二)

上篇文章给大家介绍了JavaScript 七大技巧(二),写JavaScript代码已经很久了,都记不起是什么年代开始的了。对于JavaScript这种语言近几年所取得的成就,我感到非常的兴奋;我很幸运也是这些成就的获益者。我写了不少的文章,章节,还有一本专门讨论它的书,然而,我现在依然能发现一些关于这种语言的新知识。下面的描述的就是过去让我不由得发出“啊!”的感叹的编程技巧,这些技巧你应该现在就试试,而不是等着未来的某个时候偶然的发现它们。var ban...
<< 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 >>