自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

新博客地址:blog.songchunmin.com

新博客地址:blog.songchunmin.com 由于时间精力原因,CSDN博客停止更新,

  • 博客(10)
  • 收藏
  • 关注

原创 JavaScript 对象转换之 toString 和 valueOf

开始这个话题之前,我们先看一下下面的几个例子:parseInt(0.0000004) // 4![]==[] //true['x','y'] == 'x,y' //truealert({name:'mofei'}) //"[object Object]"结果有时候会让我大吃一惊,这是为什么呢?今天就和大家讨论一下JavaScript的对象转换。基础类型先让我们

2017-02-28 22:15:02 978

转载 js中bind、call、apply函数的用法

js 里函数调用有 4 种模式:方法调用、正常函数调用、构造器函数调用、apply/call 调用。同时,无论哪种函数调用除了你声明时定义的形参外,还会自动添加 2 个形参,分别是 this 和 arguments。arguments 不涉及到上述 3 个函数,所以这里只谈 this。this 的值,在上面 4 中调用模式下,分别会绑定不同的值。

2017-02-28 10:36:35 851

原创 浏览器的渲染原理简介

1)不要一条一条地修改DOM的样式。与其这样,还不如预先定义好css的class,然后修改DOM的className。1234567891011// badvar left = 10,top = 10;el.style.left = left + "px";el.style.top = top + "px"; // Goodel.className += " theclassname"; // Goodel.style.cssText += "; left:

2017-02-28 09:02:47 702

转载 DOM性能瓶颈与Javascript性能优化

DOM性能瓶颈与Javascript性能优化 DOM操作会导致一系列的重绘(repaint)、重新排版(reflow)操作。为了确保执行结果的准确性,所有的修改操作是按顺序同步执行的。大部分浏览器都不会在JavaScript的执行过程中更新DOM。相应的,这些浏览器将对对 DOM的操作放进一个队列,并在JavaScript脚本执行完毕以后按顺序一次执行完毕。也就是说,在JavaScript执行的过程,直到发生重新排版,用户一直被阻塞。 一般的浏览器中(不含IE),repaint的速度远快于

2017-02-27 21:19:25 603

转载 chrome不能断点调试的解决方法

chrome的调试功能实在是太强大了,相比之下ie的就是一垃圾。最近在调试时出现一种情况,死活不能设置断点,也不能跟踪调试,这下抓狂了。JS也是非常简单的,也没有压缩。为什么就不能调试呢?

2017-02-27 11:08:24 2750

原创 createElement与createDocumentFragment的点点区别

在DOM操作里,createElement是创建一个新的节点,createDocumentFragment是创建一个文档片段。网上可以搜到的大部分都是说使用createDocumentFragment主要是因为避免因createElement多次添加到document.body引起的效率问题,

2017-02-21 09:35:17 609

原创 五种开源协议的比较(BSD,Apache,GPL,LGPL,MIT)

当Adobe、Microsoft、Sun等一系列巨头开始表现出对”开源”的青睐时,”开源”的时代即将到来!现今存在的开源协议很多,而经过Open Source Initiative组织通过批准的开源协议目前有58种(http://www.opensource.org/licenses /alphabetical)。我们在常见的开源协议如BSD,GPL,LGPL,MIT等都是OSI批准的协议。如果要开源自己的代码,最好也是选择这些被批准的开源协议。这里我们来看四种最常用的开源协议及它们的适用范围,供那些

2017-02-20 10:55:53 595

原创 JS命名空间(namespace)

命名空间namespace(某些语言中叫package),是一个在静态语言中常见的概念。它可以帮助我们更好地整理代码,并可避免命名冲突。

2017-02-16 22:30:15 669

转载 原生JS实现addClass,removeClass,toggleClass

jQuery操作class的方式非常强大,但是目前还有一些人不知道如何使用或者由于项目统一性的原因无法使用jquery.在此写了一个利用原生js来实现对dom元素class的操作方法

2017-02-15 14:56:32 5689

原创 addEventListener()与removeEventListener()

addEventListener()与removeEventListener()

2017-02-08 17:03:39 580

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除