javascript杂谈
午夜de末班车
喜欢看书旅游和编码
展开
-
javascript 里的 in
写js的时候需要遍历一个对象的属性,把属性名和属性值都提出来,之前没遇到这种需求,查了一下可以用for in的方式.var obj = { "key1":"value1", "key2":"value2",转载 2014-05-08 17:00:51 · 545 阅读 · 0 评论 -
Javascript 面向对象编程
Javascript是一个类C的语言,他的面向对象的东西相对于C++/Java比较奇怪,但是其的确相当的强大,在 Todd 同学的“对象的消息模型”一文中我们已经可以看到一些端倪了。这两天有个前同事总在问我Javascript面向对象的东西,所以,索性写篇文章让他看去吧,这里这篇文章主要想从一个整体的角度来说明一下Javascript的面向对象的编程。(成文比较仓促,应该有不准确或是有误的地方,请转载 2014-05-09 19:21:09 · 445 阅读 · 0 评论 -
再谈javascript的for循环性能
前几天又温习了一番JS的基础知识,发现JS循环同其他语言的循环大有不同,随后再继续翻了俩本JS的权威教程,写下这篇文章。平时我们书写循环大致是这个样子的:123456function(){ //一般循环的书写方式 for(vari=0; i转载 2014-05-13 20:13:08 · 941 阅读 · 0 评论 -
javascript代码优化杂谈
方才在程序里看到一段JS代码,写法极为高明,私心想着若是其按照规范来写,定可培养对这门语言的理解,对JS编程能力提高必是极好的。说人话:丫代码写的太乱,看的窝火!最近闲暇无事,准备对自己JS学习做一个总结。众所周知,JS是一种语法极其灵活的语言,一千个人会有一千种JS书写方式。这造成的结果往往就是给项目日后的开发及维护留下一个不小的隐患,也对你和团队再次开发及阅读代码造成一定困难,个人认为转载 2014-05-13 20:26:56 · 659 阅读 · 0 评论 -
JavaScript之条件表达式性能影响
与循环相似,条件表达式决定JavaScript运行流的走向。其他语言使用if-else或者switch表达式的传统观点也适用于JavaScript。由于不同的浏览器针对流程控制进行了不同的优化,使用哪种技术并不总是很清楚。 一、if-else 与switch 比较 使用if-else或者switch的流行理论是基于测试条件的数量:条件数量较大,倾向于使用switch而不转载 2014-05-13 19:48:15 · 696 阅读 · 0 评论 -
JavaScript之循环性能影响
在大多数编程语言中,代码执行时间多数在循环中度过。在一系列编程模式中,循环是最常用的模式之一,因此也是提高性能必须关注的地区之一。理解JavaScript中循环对性能的影响至关重要,因为死循环或者长时间运行的循环会严重影响用户体验。 一、循环的类型 ECMA-263标准第三版规定了JavaScript的基本语法和行为,定义了四种类型的循环。第一个是标准的for循环,与类转载 2014-05-13 19:47:16 · 1630 阅读 · 0 评论 -
使用jquery可能存在的9个误区
jQuery是如此容易使用以至于我们有时候忘记了CSS的存在。我们在使用CSS时,几乎不去考虑性能,因为它已经是快得不值得再去做什么优化上 的努力。但现实世界中,JQuery会导致令开发人员发疯的性能问题。有时你会毫无知觉地就损失那么几毫秒。我们也很容易忘记的一些功能并继续使用一些旧 的(和不那么好的)的功能。以下是使用jQuery过程容易犯的9个错误,看看是不是你也曾遇到过?1.不使用最新的转载 2014-05-22 11:02:14 · 532 阅读 · 0 评论 -
精品js收藏
1. oncontextmenu="window.event.returnvalue=false" 将彻底屏蔽鼠标右键 return(false)>no 可用于Table 2. "return false"> 取消选取、防止复制 3. onpaste="return false" 不准粘贴 4. o转载 2014-05-26 09:27:02 · 1153 阅读 · 0 评论 -
Ext JS - 高效的编码风格指南
1,切勿使用“new”关键字:在Ext JS中,使用“new”关键字来创建一个组件或类的实例是一种错误的做法,因为这没有遵循组件的生命周期。应该使用Ext.create方法来创建对象,例如:view sourceprint?1.错误: var obj = new Ext.panel.Panel();2. 3.正确: var转载 2014-07-01 17:37:49 · 638 阅读 · 0 评论 -
抛弃jQuery 深入原生的JavaScript
虽然我已经做网站建设工作10多年了,但我从最近3年才开始更多地学习如何更好的将纯JavaScript用于工作中,而不总是将jQuery考虑在第一位。现在我每天学习很多东西。这个过程让我觉得Adtile的JavaScript SDK 更像是在创建一个开源工程,而不是“具体的工作”,不得不说,我很喜欢那样。 今天,我准备将在过去几年学到的一些基础东西与大家一起分享,这将可能帮你深入纯 Jav转载 2014-06-16 15:26:39 · 506 阅读 · 0 评论 -
经典排序算法
1.冒泡排序法 它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。 这个算法的名字由来是因为越大的元素会经由交换慢慢“浮”到数列的顶端,故名。 由于冒泡排序简洁的特点,它通常被用来对于计算机程序设计入门的学生介绍算法的概念。冒泡C语言代码#i转载 2014-06-16 15:36:06 · 477 阅读 · 0 评论 -
jQuery提升性能技巧及个人总结
1、将jquery对象缓存起来在for循环中,不要每次都要访问数组的length属性,我们应该先将对象缓存进一个变量然后再操作,如下所示: 代码如下:var myLength = myArray.length; for (var i = 0; i // 要做的事 }代码块中,要缓存对象:代码如下:$('#item').css('color', '#1转载 2014-06-16 15:07:12 · 482 阅读 · 0 评论 -
大型JavaScript应用程序架构模式
11月中旬在伦敦举行的jQuery Summit顶级大会上有个session讲的是大型JavaScript应用程序架构,看完PPT以后觉得甚是不错,于是整理一下发给大家共勉。PDF版的PPT下载地址:http://www.slideshare.net/jibyjohnc/jqquerysummit-largescale-javascript-application-architecture转载 2014-05-09 19:20:50 · 539 阅读 · 0 评论 -
JS函数声明和函数表达式
JS中有两种定义函数的方法:函数声明和函数表达式。函数声明是指下面的形式:function functionName(){ // JS Code}函数表达式则类似于给变量赋值:var functionName = function(){ // JS Code}这两种写法相差无几,实际项目中都是可行的,我们可能也没有发现什么转载 2014-05-15 11:37:17 · 649 阅读 · 0 评论 -
Jquery.ajax不能解析json对象,报Invalid JSON错误的原因和解决方法
我们知道Invalid JSON错误导致的json对象不能解析,一般都是服务器返回的json字符串的语法有错误。这种情况下,我们只需要仔细的检查一下json就可以解决问题。下面说一下,最近在使用jquery 1.4中使用$.ajax()方法解析json对象遇到的问题。 Json对象是: [{name:'二手房出售',infoCount:0,pageUrl:'转载 2014-05-08 17:05:08 · 2672 阅读 · 0 评论 -
Ajax的简单用法介绍
Ajax 能够做什么? 如今 Google Suggest 和 Google Maps 使用了 Ajax,通过 Ajax,我们可以使得客户端得到丰富的应用体验及交换操作,而用户不会感觉到有网页提交或刷新的过程,页面也不需要被重新加载,应用的数据交换都被隐藏。 传统的 WEB 应用程序模型是这样工作的:用户的界面操作触发 HTTP 请求,服务器在接收到请转载 2014-05-08 15:04:27 · 595 阅读 · 0 评论 -
javascript你应该知道的七件事
Javascript发展到今天,很高兴看到她的成功。曾经好多人都这么说:写程序这么多年,现在最看不懂的程序是javascript!javascript虽然是一种弱类型语言,但是她却有着“高贵”的理论。下面是学习javascript过程中的一些小激动时刻,记录下来,大家可以跟我一起感受。缩略标记在创建对象和数组的过程中可以使用缩略标记。过去,我们需要创建一个对象时,我们会这样转载 2014-05-08 10:33:39 · 451 阅读 · 0 评论 -
用jQuery控制form表单值的方法总结
获取表单元素单选框(radio): $(":radio[name=sex]:checked").val();多选框(checkbox): $(":checkbox[name=sport]:checked").each(function(){ alert($(this).val()转载 2014-05-08 17:02:25 · 657 阅读 · 0 评论 -
Javascript Global对象解析
Global对象是ECMAScript中最特别的对象,因为实际上它根本不存在。如果尝试编写下面的代码,将得到错误:错误消息显示Global不是对象,但刚才不是说Global是对象吗?没错。这里需要理解的主要概念是,在ECMAScript中,不存在独立的函数,所有函数都必须是某个对象的方法。本书前面介绍的函数,如isNaN()、isFinite()、parseInt()和parseFlo转载 2014-05-08 15:05:43 · 646 阅读 · 0 评论 -
window.event对象详细介绍
1、event代表事件的状态,例如触发event对象的元素、鼠标的位置及状态、按下的键等等。event对象只在事件发生的过程中才有效。event的某些属性只对特定的事件有意义。比如,fromElement 和 toElement 属性只对 onmouseover 和 onmouseout 事件有意义。 2、属性:altKey, button, cancelBubble,转载 2014-05-08 15:09:25 · 691 阅读 · 0 评论 -
jQuery.extend()、jQuery.fn.extend()扩展方法详解
jQuery自定义了jQuery.extend()和jQuery.fn.extend()方法.其中jQuery.extend()方法能够创建全局函数或者选择器,而jQuery.fn.extend()方法能够创建jQuery对象方法.例如:[javascript] view plaincopyprint?jQuery.extend({转载 2014-05-08 10:49:12 · 806 阅读 · 0 评论 -
jQuery源码 框架分析
每一个框架都有一个核心,所有的结构都是基于这个核心之上,结构建立好了之后,剩下的就是功能的堆砌。jQuery的核心就是从HTML文档中匹配元素并对其操作。就跟一座大楼一样,让我们一步一步了解这座大厦的基石和结构。1.构造函数2.链式语法3.选择器4.扩展性 一、构造函数 我们知道类是面向对象编程的一个重要概念转载 2014-05-08 10:50:29 · 2892 阅读 · 0 评论 -
GET和POST乱码问题剖析
1、文章1最近遇到一个问题:用get方法传递中文有问题,用post没有问题。 问题简单的描述是这样的: ">aa 这里userGroupName是中文 在userGroup.jsp页面得到的userGroupName却是乱码。 每个页面也都有说明。 后来上网找了一下才知道:pageEncoding这个只对post起作用。get方法提转载 2014-05-08 11:28:31 · 650 阅读 · 0 评论 -
Javascript笔记(对象如何创建、对象如何继承)
1在js中为某个对象(控件)绑定事件通常可以采取两种手段:1)nput type="button" onclick="clickHandler();"/>2)nput type="button" id="button1"/> type="text/javascript"> var v = document.getElementById("button1");转载 2014-05-08 14:53:41 · 407 阅读 · 0 评论 -
HTML页面居中弹出自定义窗口层(实现可拖拽)
使用DIV弹出窗口来动态显示内容的原理:首先采用CSS和HTML隐藏弹窗中的内容,然后利用JavaScript(本教程中是JQuery)来动态显示它们。这种效果不仅能够充分利用有限的版面空间,而且能够提高用户体验;更重要的是,它并不影响SEO效果(因为它实际存在于页面中,只是初始为不可见状态)1、在html页面中定义一个div,并在div实现我们需要展示的内容。转载 2014-05-08 17:07:32 · 1671 阅读 · 0 评论 -
js代码优化
JS代码的执行效率往往直接影响了页面的性能,有的时候,实现同样的功能,不同的JS代码往往在效率上相差很多,有的时候仅仅是由于我们的书写习惯导致的,当然在高级点的浏览器中,它们大多都已经帮我们优化了,但是在中国,万恶的IE6仍然大量的存在,我们不得不去考虑它。对于JS代码的优化,实际上有很多的情况,有些影响是比较小的,而有些是比较严重的,本文中,我把几个我认为影响比较严重的情况列出来,供大家参考。转载 2014-06-18 09:17:48 · 616 阅读 · 0 评论