Welcome 微信登录

首页 / 脚本样式 / JavaScript

探寻Javascript执行效率问题

探寻Javascript执行效率问题

Javascript是一门非常灵活的语言,我们可以随心所欲的书写各种风格的代码,不同风格的代码也必然也会导致执行效率的差异,开发过程中零零散散地接触到许多提高代码性能的方法,整理一下平时比较常见并且容易规避的问题 Javascript自身执行效率 Javascript中的作用域链、闭包、原型继承、eval等特性,在提供各种神奇功能的同时也带来了各种效率问题,用之不慎就会导致执行效率低下。 1、全局导入 我们在编码过程中多多少少会使用到一些全局变量(w...
jQuery的deferred对象详解

jQuery的deferred对象详解

一、什么是deferred对象?开发网站的过程中,我们经常遇到某些耗时很长的javascript操作。其中,既有异步的操作(比如ajax读取服务器数据),也有同步的操作(比如遍历一个大型数组),它们都不是立即能得到结果的。通常的做法是,为它们指定回调函数(callback)。即事先规定,一旦它们运行结束,应该调用哪些函数。但是,在回调函数方面,jQuery的功能非常弱。为了改变这一点,jQuery开发团队就设计了deferred对象。简单说,deferre...
javascript的函数作用域

javascript的函数作用域

在一些类似c语言的编程语言中,花括号内的每一段代码都具有各自的作用域,而且变量在声明他们的代码段之外是不可见的,我们称为块级作用域(block scope),而javascript中没有块级作用域。取而代之的javascript使用的是函数作用域(function scope):变量在声明它的函数体以及这个函数体嵌套的任意函数体内都是有定义的。 在如下代码中,在不同位置定义的i,j和k,他们再同一个作用域内都是有定义的复制代码 代码如下:function ...
完美兼容各大浏览器的jQuery仿新浪图文淡入淡出间歇滚动特效

完美兼容各大浏览器的jQuery仿新浪图文淡入淡出间歇滚动特效

1、效果及功能说明 仿新浪微博图片文字列表上下淡进淡出间歇上下滚动2、实现原理 首先要设定div内只能显示4个图片那么多出来的图片会自动隐藏然后在给图片添加一个动画的事件让他们可以滚动的播放出来上下滚动效果播放就是li标签里面的内容图片和文字把每一个li看成一个整体在滚动播放的时候进入div内的显示出来在最后离开div的时候隐藏在给整个动画效果设定一个时间就可以完整的运行。3、运行环境IE6 IE7 IE8及以上 Firefox 和 Google Chro...
a标签的href与onclick事件的区别详解

a标签的href与onclick事件的区别详解

onclick中javascript的区别一般没用到都没注意,但出错时才有些郁闷,看文本章解释如下:以前一直很随意,后来看.net里的linkbutton似乎是用在<a href="javascript:fun();"...>的形式,今天用这种方式就遇到一些问题,摘网友的文章和我的结论放在下面:1.链接的 onclick 事件被先执行,其次是 href 属性下的动作(页面跳转,或 javascript 伪链接); 2.假设链接中同时存在 hre...
详谈jQuery中的this和$(this)

详谈jQuery中的this和$(this)

网上有很多关于jQuery的this和$(this)的介绍,大多数只是理清了this和$(this)的指向,其实它是有应用场所的,不能一概而论在jQuery调用成员函数时,this就是指向dom对象。$(this)指向jQuery对象是无可厚非的,但this就是指向dom对象,这个是因为jQuery做了特殊的处理。 在创建dom的jQuery对象时,jQuery不仅仅为dom创建一个jQuery对象,而且还将dom存储在所创建对象的数组中。复制代码 代码如...
js获取字符串最后一位方法汇总

js获取字符串最后一位方法汇总

方法一:运用String对象下的charAt方法charAt() 方法可返回指定位置的字符。复制代码 代码如下:str.charAt(str.length – 1)请注意,JavaScript 并没有一种有别于字符串类型的字符数据类型,所以返回的字符是长度为 1 的字符串方法二:运用String对象下的substr方法substr() 方法可在字符串中抽取从 start 下标开始的指定数目的字符。复制代码 代码如下:str.substr(str.lengt...
jQuery $命名冲突解决方案汇总

jQuery $命名冲突解决方案汇总

最近遇到个问题,同时引用了jquery库和另外一个js库。当用$XX去调用js库函数时,发现失效了!于是找资料,原来是jquery命名冲突了。因为许多JavaScript 库使用$作为函数或变量名,jquery也一样。其实$只是jquery的一个别名而已,假如我们需要使用jquery 之外的另一js库,我们可以通过调用 $.noConflict() 向该库返回控制权。下面是收集到解决这一问题的五种方案,总有一种你会用得上的。例一:复制代码 代码如下:<...
使用node.js 制作网站前台后台

使用node.js 制作网站前台后台

node.js 能做什么?我至今也不清楚,他在哪方面应用比较广泛,我没有机会接触到那样的项目。只是因为喜欢,业余时间做了一个网站和后台。深刻领悟到一个道理那就是如果你喜欢一项技术可以玩玩,但是如果用到项目中就必须花些时间去解决很多问题。使用到的技术:express + jadesqlite + sequelizeredis1. 关于jade 支持include。 比如: include ./includes/header header 是一个局部视图,类似...
详谈JavaScript内存泄漏

详谈JavaScript内存泄漏

1、什么是闭包、以及闭包所涉及的作用域链这里就不说了。2、JavaScript垃圾回收机制 JavaScript不需要手动地释放内存,它使用一种自动垃圾回收机制(garbage collection)。当一个对象无用的时候,即程序中无变量引用这个对象时,就会从内存中释放掉这个变量。复制代码 代码如下: var s = [ 1, 2 ,3]; var s = null; //这样原始的数组[1 ,2 ,3]就会被释放掉了。3、循环引用 三个对象 A 、B 、...
详谈JavaScript 匿名函数及闭包

详谈JavaScript 匿名函数及闭包

1、匿名函数函数是JavaScript中最灵活的一种对象,这里只是讲解其匿名函数的用途。匿名函数:就是没有函数名的函数。1.1 函数的定义,首先简单介绍一下函数的定义,大致可分为三种方式第一种:这也是最常规的一种复制代码 代码如下:function double(x){ return 2 * x; }第二种:这种方法使用了Function构造函数,把参数列表和函数体都作为字符串,很不方便,不建议使用。复制代码 代码如下:var double = new F...
<< 941 942 943 944 945 946 947 948 949 950 >>