上一页 1 ··· 18 19 20 21 22 23 24 25 26 ··· 42 下一页
摘要: 本文只针对UML菜鸟,你是中鸟、老鸟,请直接无视本文!摘要:你只需要阅读完本章,就能从宏观上掌握UML的知识,在你的脑袋中形成一张UML的蓝图。你能全面了解UML的基本知识,UML的各种图的用途和概况,你能和实际工作遇到的问题联系起来,帮助你进一步规划下一步的学习。本文是新书《活用UML——需求分析高手》中的第1章“大话UML”,本书更多资料可参考:http://www.umlonline.org/school/forum-140-1.html第2章已经在博客园发布,文章名字叫:让人耗尽脑汁的需求分析工作文章链接:http://www.cnblogs.com/umlonline/archive 阅读全文
posted @ 2011-10-27 14:06 tokeep 阅读(227) 评论(0) 推荐(0) 编辑
摘要: 今天和一个朋友讨论到JavaScript中一些引用数据类型的复制问题,由于引用数据类型是传址复制,如果想达到真正的“复制”效果(即修改一个 变量的值不会影响另一个的值),就不能使用像 var b = a; 这样的语句,对于引用类型来说,这样复制的结果就是当a的值发生变化时,b也会发生同样的变化,因为这时a真正的值只是对一个地址的引用,b复制到的也只 是这个相同地址的引用而已,于是当a和b其中一个被修改之后,另一个也随之改变,有些时候这并不是我们想要的。这样的问题遇到最多的就是在处理数组和json对象时。对于数组,我们有很方便的内置方法可以使用: var arrayA = [1,2]; ... 阅读全文
posted @ 2011-10-27 14:05 tokeep 阅读(481) 评论(0) 推荐(0) 编辑
摘要: 在 JavaScript 中,Date 对象的方法远远不及其它语言多,很多常用的方法都没有提供,上次在做 Calendar 项目的时候,自己又添加了一些方法,今天整理了一下,写成了一个 dateHelper 对象,下次用的时候就不用再写了。var dateHelper = { isLeapYear: function(year){ //是否为闰年 if ((year % 400 == 0) || (year % 100 != 0) && (year % 4 == 0)) { return true; } els... 阅读全文
posted @ 2011-10-27 12:21 tokeep 阅读(234) 评论(0) 推荐(0) 编辑
摘要: 在JavaScript中,通过prototype扩展内置对象会导致一个问题,看看下面的例子:Object.prototype.extendFn = function(){ return false;}var a = { "aa" : "1"}for( var i in a ){ //这时会遍历出"aa"和"extendFn" alert(i);}在这个例子中,我们通过 prototype 为 Object 扩展了一个名为 extendFn 的方法,接着创建了一个对象 a ,在试图遍历该对象的时候,刚才扩展的 ext 阅读全文
posted @ 2011-10-27 12:20 tokeep 阅读(198) 评论(0) 推荐(0) 编辑
摘要: 今天项目中需要用到动态加载 CSS 文件,经过一番折腾终于搞定,回家整理了一下,顺便融合了动态加载 JS 的功能写成了一个对象,先上代码:var dynamicLoading = { css: function(path){ if(!path || path.length === 0){ throw new Error('argument "path" is required !'); } var head = document.getElementsByTagName('head')[0]; var link = document.crea 阅读全文
posted @ 2011-10-27 12:19 tokeep 阅读(373) 评论(0) 推荐(0) 编辑
摘要: 有着“字符串处理利器”美称的正则表达式在 JavaScript 中同样扮演了一个重要的角色,开发人员使用他方便地对字符串进行查找、替换等等操作,然而对于绝大多数人而言正则表达式并不是一门简单的语言,编写规则稍 微复杂的正则往往需要花费大量的时间和精力,好在它具有很强的独立性,与程序逻辑本身没有牵连,这意味着如果你知道一个符合需求且有效的正则表达式,那么 你可以完全放心的复制并粘贴到你的代码中。于是在平时收集一些常用的正则表达式就变成一件非常有意义的事情。URL:/^(https?:\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/?$/Ema 阅读全文
posted @ 2011-10-27 12:18 tokeep 阅读(142) 评论(0) 推荐(0) 编辑
摘要: 可以说数组在任何一门编程语言中都是一个极其重要的工具,在 JavaScript 也是如此,但遗憾的是原生 JavaScript 中对数组提供的方法少之又少,这在一定程度上降低了开发效率,如果你也为此所困扰,那么下面的代码对于缓解这样的尴尬局面也许能有一点帮助。在开始对数组进行原型扩展之前,非常有必要添加一个方法来验证一个变量是否为数组类型。该方法接受一个任意数据类型的变量作为参数,如果是数组则返回true,否则,你懂得。function isArray(a){ return a.constructor === Array ? true : false;}// Usage :var isArra 阅读全文
posted @ 2011-10-27 12:18 tokeep 阅读(296) 评论(0) 推荐(0) 编辑
摘要: JSON 自从被人们认识以来,就凭借其简易的编码解码方式,良好的可读性、可扩展性以及与 JavaScript 暧昧的关系,逐步吞噬掉了 XML 的空间,现在已经成为 AJAX 数据交换的绝对主力。但是,如果你从后台返回中得到了下面的 JSON,那么这可能会在 Chrome 浏览器中出现一些小问题,这正是本文所要讨论的。var people = { "Zhang": {"age":28, "location": "成都"}, "Lee": {"age":32, "lo 阅读全文
posted @ 2011-10-27 12:12 tokeep 阅读(316) 评论(0) 推荐(0) 编辑
摘要: 编程中无可避免地要和数字打交道,但在 JavaScript 中,对数字的操作往往在某些时候可能会让人感到一些迷惑,比如说 parseInt 方法就是一个典型的例子。1. parseInt 的进制问题parseInt 是 JavaScript 中非常常用的一个方法,它用来将数字型的字符串转换为数字类型的整数,一般使用这个函数不会出现什么问题,但有些情况例外,比如要转换的字符串为 "08","09"。下面的代码展示了 parseInt 处理字符串"08"时不同的返回结果。导致这种结果的原因在于,可能很少有人注意到 parseInt 方法实 阅读全文
posted @ 2011-10-27 12:10 tokeep 阅读(181) 评论(0) 推荐(0) 编辑
摘要: URL在大多数时候都是后端程序员关心的事情,但有的时候前端程序员也需要与之打交道,可能很多人都做过的一件事就是通过对 href 属性的写操作达到跳转页面的目的,不过这并不是今天要讨论的全部话题。对于 URL,我们需要了解更多,因为我们的开发中可能会需要提取URL的部分信息来做不同的事情,事实上这也是与后端交互的一种独特的方式,当然这肯定是安全 的,当请求被返回,关于 url 的信息就被记录在了 Window 对象的 Location 属性中,取值的结果并不随着用户手动修改地址栏中的字符而发生任何改变,这一点是很重要的。了解了这些内容,那么我们从下面这张图开始吧:不要被那些色块迷惑了,图片中间那 阅读全文
posted @ 2011-10-27 12:08 tokeep 阅读(192) 评论(0) 推荐(0) 编辑
上一页 1 ··· 18 19 20 21 22 23 24 25 26 ··· 42 下一页