摘要: 这两种主要是对《Prototype浅析》先前略过的Sring部分中toQueryParams和Object部分的toQueryString方法的补充一、从URL中提取参数有下列字符串:var linkURL = 'http://localhost:8080/String/string_6.html?昵称=小西山子&age=24#id1';对于一个真实的URL地址,可以用js来读取location中的相关信息来获得某些信息,下面列举一些:location.origin : http://localhost【域】location.pathname : /project_js 阅读全文
posted @ 2012-01-12 01:20 西山 阅读(6563) 评论(0) 推荐(1) 编辑
摘要: 本文接着上面的String部分,继续下面表格的部分格式camelize | capitalize|underscore|dasherize|inspect 变形toArray|succ|times 这里面一个有用的方法是inspect,按照参考手册的说明,他的作用是“返回该字符串针对调试的字符串表现形式(即用单引号或双引号包括起来,并使用 '\' 对特殊字符进行转义)”,在Object的toJSON里面也涉及到这个方法。 既然涉及到需要转义的字符,我们自然要一份转义字符信息,下面直接给出: String.specialChar = { '\b': '\\ 阅读全文
posted @ 2012-01-11 10:10 西山 阅读(445) 评论(0) 推荐(0) 编辑
摘要: 赶紧升级你们的浏览器吧·1、firefoxhttp://firefox.com.cn/2、chromehttp://www.google.com/chrome/index.html?hl=zh_cn&brand=CHMA&utm_campaign=zh_cn&utm_source=zh_cn-ha-apac-zh_cn-bk&utm_medium=ha3、opera(什么时候弄的一个“欧朋”这么丑的名字··) http://www.operachina.com/4、ie9 http://windows.microsoft.com/i 阅读全文
posted @ 2012-01-11 02:04 西山 阅读(389) 评论(1) 推荐(0) 编辑
摘要: 添加到String.prototype中的方法比较多,不过归结起来,大致分为下面几类:分类方法名原始能力增强 strip| include |startsWith |endsWith| empty| blank格式camelize | capitalize| underscore| dasherize |inspect 变形toArray| succ |times替换interpolate |sub| scan| truncate | gsubHTML处理stripTags |escapeHTML| unescapeHTML参数序列化toQueryParamsJSON处理u... 阅读全文
posted @ 2012-01-10 12:50 西山 阅读(1095) 评论(0) 推荐(0) 编辑
摘要: JSON介绍http://json.org/这个解析JSON,也是Prototype源码浅析的一个铺垫。下面是一个开篇例子,其中response是从服务器获得的JSON字符串: var response_1 = "{\"user\":\"xesam\",\"info\":{\"age\":\"24\"}}"; var response_2 = "{'user' : 'xesam'}"; var response_3 = &q 阅读全文
posted @ 2012-01-09 23:41 西山 阅读(6427) 评论(0) 推荐(0) 编辑
摘要: PS:检测浏览器虽然不是一个什么好的做法,但是有时候还是很必要的。见得最多的就是检测navigator.userAgent(这个可以面向所有浏览器,略过)。另外一种就是IE的条件注释,这篇有个比较详细的说明http://www.cnblogs.com/JustinYoung/archive/2009/03/02/ie-jiaojianzhushi.html,注意看它下面的回复<!--[if !IE]><!--><script type="text/javascript"> alert('非IE')</ script& 阅读全文
posted @ 2012-01-01 15:21 西山 阅读(1318) 评论(0) 推荐(0) 编辑
摘要: 说明:在javascript中,由于缺乏传统面向对象语言的继承机制,类与继承是一个比较复杂的概念。因此本段解析中,不就javascript中的原型、类、继承、封装进行深入探讨。需要深入了解的可以去参考大牛的文章,另推荐几本书《javascript高级程序设计》、《javascript语言精髓与编程实践》和《javascript设计模式》,多读几遍就会对javascript的原型有深入的了解。所以本文只就Prototype远源码涉及到的部分进行解析。正文:到Class这一步,需要说一下前面没有说到的单体模式,通过前面的几个部分的观察,会发现整个Prototype部分,大部分对象的方法扩展采用的都 阅读全文
posted @ 2011-12-27 19:20 西山 阅读(3507) 评论(6) 推荐(3) 编辑
摘要: 前面分析了Class的构造部分,现在,需求变动啦(又变动啦!),现在需要一个Teacher类,同样有say方法,但是除此之外还有teach方法。我们再重复定义say就不划算了,因为Person有现成的,于是就牵扯到继承的问题,我要让Teacher类继承Person的方法。先复习一下JS常见继承的基本原理。假定现在有Person和Teacher类,让Teacher继承Person的方法:Teacher.prototype = new Person();这个方法的缺点是Person有可能很庞大,许多初始化操作是我们不必要的,我们只需要Person.prototype的方法而已。因此用一个Obj作为 阅读全文
posted @ 2011-12-27 19:20 西山 阅读(970) 评论(0) 推荐(0) 编辑
摘要: 对JSON不甚了解的可以先看下这个:《JSON三分钟课程》、《JSON入门课程》对JSON的操作主要是解析JSON字符串为一个对象和将一个对象转换成JSON字符串。网上搜一下JSON解析,就会发现一堆文章和方法,当然这篇文章主要不是讨论JSON的解析,不过也可以大致回顾一下:第一、eval。eval('(' + jsonStr + ')');加个括号是为了强制表达式运算,不然直接eval('{}'),具体原因可以去翻看一下《JS语言精髓与编程实践》第二、Function第三、另外有一个JSON解析的库,这个可以自己去下载第四、除了IE6,7之外, 阅读全文
posted @ 2011-12-22 15:51 西山 阅读(1224) 评论(0) 推荐(0) 编辑
摘要: overflow是CSS里面定义的一个定位属性,最常见的作用是用来设置当元素的内容溢出其区域时发生的处理方法。另外一个常见的作用是清除浮动。一个实例:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html><head> <meta http-equiv="Content-Type" content= 阅读全文
posted @ 2011-12-21 21:33 西山 阅读(813) 评论(7) 推荐(0) 编辑