随笔分类 - js
摘要:(+a)会自动把字符串(如果)变为Number类型如:var a = '1', b=1; +a+1+'a' => '2a' +b+1+'b' => '2b' 函数内的arguments类数组对象,不能直接当数组用,如[1].concat(arguments)不会得到[1, arguments[0],
阅读全文
摘要:1,变换iframe的src导致的browser history增加了 一个h5页面,被嵌入到app的webview中。这个页面中包含一个iframe用来加载视频地址。后续会根据情况多次改变这个iframe的src来切换视频。发现如此这般,点击‘后退’就会后退到iframe为上个src的当前页面,而
阅读全文
摘要:《高性能网站建设进阶指南》: 1.使用局部变量,避免深入作用域查找,局部变量是读写速度最快的;把函数中使用次数超过一次的对象属性和数组存储为局部变量是一个好方法;比如for循环中的.length通常可以保存为局部变量。 2,多个if时,if顺序按概率降序排列 3,当仅判断一两个条件时,if通常比sw
阅读全文
摘要:有个document里定义了一个函数func(),同时在document里嵌入了一个iframe,在这个iframe里调用父窗口的方法:parent.func(),本来我以为这个函数的运行环境是在这个iframe自己里面,测试发现虽然是在iframe里面调用的这个函数,但是运行环境依然是在父窗口里。...
阅读全文
摘要://十进制转其他 var x=110; alert(x); alert(x.toString(8)); alert(x.toString(32)); alert(x.toString(16)); //.toUpperCase()//其他转十进制 var x='110'; alert(pa...
阅读全文
摘要:example 1: example 2: example 3: example 4: setTimeout(fun,time)中的fun是在全局对象:`window`下执行的。example3和example4的区别在于: example3相当于在全局下执行: example4相当于在全局下执行:
阅读全文
摘要:不确定下面表达式的运算顺序? a>b?c:d+e a&&b==c 看看下表就清楚了,下表按优先级从最高到最低的列出,具有相同优先级按从左至右的顺序求值. new Foo().getName(); > ( new Foo() ).getName(); new new Foo().getName();
阅读全文
摘要:闭包:一个函数oneF里return了另一个函数innerF,然后在oneF外面运行了函数innerF,如果innerF里有用到在oneF里定义的变量,则此时依然可以引用到,但是变量值不是定义函数innerF那时变量的值,而是运行函数innerF时变量的值(此时很可能由于已经运行了函数oneF而导致...
阅读全文
摘要:Math.random()方法可以返回(0,1)之间的随机数,不包括0和1。套用公式:Math.floor(Math.random()*可能的值的总数+第一个可能的值)如得到(3,9]之间的随机数就是Math.floor(Math.random()*7+3) ...
阅读全文
摘要:在线正则测试:http://regexpal.com/ 一点的学习,关于正则的会都放在这里: 基础知识: 特殊的元字符/保留字符:正则表达式中不参与匹配的字符,如[],() 量词:如+,*,?,{3},{3,}里的3,{3,6} 字符组简写式/转义字符:如\d 捕获分组:用( )括起来,后面可以用\
阅读全文
摘要:1、获取选中的文字:document.selection.createRange().text; IE9以下使用window.getSelection().toString(); 其他浏览器使用$('p').mouseup(function(){ var txt = window.getSel...
阅读全文
摘要:1、.position()和.offset()jquery的.position()获取相对于最近的position为relative或absolute的父元素的偏移,返回.position().left和.position().top,不算上自己的margin-left;jquery的.offset...
阅读全文
摘要:a=''||'abc'; //返回什么? 'abc'a=1||2; //返回什么? 1var a=0; var b=++a||++a ; //a=1;b=1;b=''&&'abc' //返回什么? ’‘b...
阅读全文
摘要:比如:每次点击“提交”按钮后隔3s后才能再次提交。可以这样:点击后设置按钮不可用,并在3s后再设置按钮可用$('#button1').click(function(){ //在这里提交或做别的事 $(this).attr("disabled",true); se...
阅读全文
摘要:1、window.open()参数window.open(pageURL,name,parameters)其中:pageURL为子窗口路径name为子窗口句柄parameters为窗口参数(各参数用逗号分隔),如常用的'height=100,width=400,top=0,left=0,toolba...
阅读全文
摘要:1、substr 方法 返回一个从指定位置开始的指定长度的子字符串。 stringvar.substr(start [, length ]) 参数:stringvar 必选项。 要提取子字符串的字符串文字或 String 对象。 start 必选项。 所需的子字符串的起始位置。字符串中的第一个...
阅读全文
摘要:是不是新手都会遇到这个问题?遇到过一次,在网上搜一搜,综合成了下面这样。重点参考了dolphin的‘jQuery的attr与prop’, 写的很清楚呢。一般attribute翻译成中文术语为“特性”,property翻译成中文术语为“属性”.1.attributeattribute 可以看作是一个特...
阅读全文
摘要:目的是如果一个变量是已声明未赋值,就可以直接赋值,并且不能改变变量的作用域;如果未声明的话,就重新声明,在网上搜了下,常见的方法是if(typeof(a)=='undefined'){var a='ss';},但是这种方法对未声明或已声明未赋值的变量都会返回true。而且如果是这样:var a;function f(){ if(typeof(a)=='undefined') {var a=1;}}f();console.log(a);会显示undefined,因为f()里面只是声明了一个同名的局部变量。但是如果是已声明未赋值的变量:if(noVa
阅读全文