摘要: 1. var data = " test "; var reg = /]*>/ig; var a = data.replace(reg, ""); console.log(a);2.var str=""; var data = [' ', ' '] ; var reg = /]+)\1)(?:(?!src=).)*src=(['"]?)([^'"\s>]+)\3[^>]*>/i; for(var i=0;i<data.length;i++ 阅读全文
posted @ 2013-10-17 15:04 hongdada 阅读(211) 评论(0) 推荐(0) 编辑
摘要: 问号1.?表示重复前面内容的0次或一次(但尽可能多重复)var reg=/abc?/g;var str="abcdabcaba";console.log(str.match(reg)); //abc,abc,ab2.??表示重复前面内容的0次或一次(但尽可能少重复)var reg=/abc??/g;var str="abcdabcaba";console.log(str.match(reg)); //ab,ab,ab3.惰性量词正则中的量词都为贪婪量词,但在后面加上?就成了惰性量词。var reg=/a\w+/g;var str="abcdab 阅读全文
posted @ 2013-10-17 13:35 hongdada 阅读(1058) 评论(0) 推荐(0) 编辑
摘要: 正向前瞻:用来捕获出现在特定字符之前的字符,只有当字符后面跟着某个特定字符才去捕获它。(?=)负向前瞻:它用匹配只有当字符后面不跟着某个特定字符时才去匹配它。(?!)在执行前瞻和负向前瞻之类的运算时,正则表达式引擎会留意字符串后面的部分,然而却不移动index 。代码: var reg=/([a-z]+(?=\d))/g; var str="abc1bcd2cde"; console.dir(reg.exec(str)); console.dir(reg.exec(str)); console.dir(RegExp); console.log(str.match(reg.. 阅读全文
posted @ 2013-10-17 09:42 hongdada 阅读(1058) 评论(0) 推荐(0) 编辑
摘要: 继续上一篇的写,这篇复杂点。分组+范围var reg=/([abcd]bc)/g; var str="abcd bbcd cbcd dbcd"; console.log(str.match(reg)); console.dir(reg.exec(str)); console.dir(reg.exec(str)); console.dir(reg.exec(str)); console.dir(reg.exec(str)); var reg=/([abcd]bc)/; var str="abcd bbcd cbcd dbcd"; console.log(s 阅读全文
posted @ 2013-10-16 14:22 hongdada 阅读(307) 评论(0) 推荐(0) 编辑
摘要: 在现在的我看来,带小挂号的就是分组,嗯。代码: var reg=/(abc)/; var str="abcdabcdeabcdef"; console.dir(reg.exec(str)); var reg=/(abc)(de)/; var str="abcd abcde abcdef"; console.dir(reg.exec(str)); var reg=/(abc)(abc)/; var str="abcd abcde abcdef"; console.dir(reg.exec(str));没有子对象 var reg=/(ab 阅读全文
posted @ 2013-10-15 17:43 hongdada 阅读(311) 评论(0) 推荐(0) 编辑
摘要: 关于正则表达式的RegExp方法:test,exec,String 方法:match,search,全局 g var str = "abababa"; var re = /a/g; console.log(re.test(str)); console.log(re.lastIndex); console.log(re.test(str)); console.log(re.lastIndex); console.log(re.test(str)); console.log(re.lastIndex); console.l... 阅读全文
posted @ 2013-10-15 11:57 hongdada 阅读(1240) 评论(0) 推荐(0) 编辑
摘要: 方法1:Date.prototype.Format = function (fmt) { var o = { "M+": this.getMonth() + 1, //月份 "d+": this.getDate(), //日 "h+": this.getHours()%12==0?12:this.getHours()%12, //小时 "H+": this.getHours(), "m+": this.getMinutes(), //分 "s+": this.getSecon 阅读全文
posted @ 2013-10-10 10:13 hongdada 阅读(364) 评论(0) 推荐(0) 编辑
摘要: setTimeout() 方法用于在指定的毫秒数后调用函数或计算表达式。 可以发现setTimeout内部的function是等待10s以后再执行的。 把时间改为0 发现它还是最后执行的 类似异步 更具体的,更详细的 时间为100微秒 差距都差不多,更setTimeout间隔时间无关. 那么setT 阅读全文
posted @ 2013-10-09 17:36 hongdada 阅读(1147) 评论(0) 推荐(0) 编辑
摘要: 继:http://www.cnblogs.com/hongdada/p/3328089.htmlnew function(){}function(){}():大概的总结:function(){}中有两个对象一个是function()的实例化,这个肯定类型是object的,称为"实例化对象".一个是return的对象,称为“返回对象".当function()内部没有return时,那么返回对象=实例化对象。当new function(){}时,如果返回对象存在,并且类型是object,那么就返回返回对象,反之就返回实例化对象。当function(){}()时,这是个 阅读全文
posted @ 2013-09-29 14:54 hongdada 阅读(479) 评论(0) 推荐(0) 编辑
摘要: new初始化方法简单没有return的就不写了 function Person() { this.name="hongda"; this.age=28; return "fffffff"; } var p = new Person(); console.dir(p); console.log(typeof p); var pp=Person(); console.log(pp); console.log(typeof pp); fun... 阅读全文
posted @ 2013-09-18 11:13 hongdada 阅读(1406) 评论(0) 推荐(0) 编辑
摘要: 例:function ConcreteClass() { this.performTask = function () { this.preTask(); console.log('doing something'); this.postTask();... 阅读全文
posted @ 2013-09-13 14:48 hongdada 阅读(354) 评论(0) 推荐(0) 编辑
摘要: 1.function的静态变量 2.重写function的构造函数(其实就是把function覆盖) 3.封装 var Universe; (function () { var instance; Universe = function () { if (instance) { return instance; } instance = this; this.nam... 阅读全文
posted @ 2013-09-12 17:00 hongdada 阅读(243) 评论(0) 推荐(0) 编辑
摘要: 1.function a() { console.log(this);}a.call(null);window如果第一个参数传入的对象调用者是null或者undefined的话,call方法将把全局对象(也就是window)作为this的值。所以,不管你什么时候传入null,其this都是全局... 阅读全文
posted @ 2013-09-09 14:51 hongdada 阅读(320) 评论(0) 推荐(0) 编辑
摘要: eval的基础用法是:执行字符串形式的JavaScript表达式或语句,并返回结果(如果有) eval函数返回值如果没有参数,返回undefined如果有返回值将返回此值,否则返回undefined如果为表达式,返回表达式的值如果为语句返回语句的值如果为多条语句或表达式返回最后一条语句的值var json=eval("({sitename:'dreamdu',sitedate:new Date(1980, 12, 17, 12, 0, 0)})");document.write(json.sitename);document.write(json.sited 阅读全文
posted @ 2013-09-06 11:28 hongdada 阅读(290) 评论(0) 推荐(0) 编辑
摘要: caller是function的属性callee是arguments的属性callee:返回正在执行的函数对象。var sum = function (n) { if (1 == n) return 1; else return n + sum(n - 1); } console.log(sum(100)); var sum = function (n) { if (1 == n) return 1; else return n + arguments.callee(n - 1)... 阅读全文
posted @ 2013-09-04 16:30 hongdada 阅读(255) 评论(0) 推荐(0) 编辑