- 浏览: 26580 次
- 性别:
- 来自: 北京
最新评论
文章列表
五种基本类型的值在内存种占据固定大小空间,因此被保存在栈内存种,引用类型的值是对象,保存在堆内存中。
确定一个值是哪种基本类型用typeof操作符,而确定一个值是哪种应用类型可以用instanceof操作符,但在多框架的页面中存在问题,常用Object.prototype.toString.call(value)判断,检测数组还可用ECMAScript 5提供的Array.isArray()方法,但得考虑支持性。
延长作用域链的办法:(1)try-catch语句的catch块;(2)with语句(没有块级作用域)
垃圾收集的实现方式:(1)标记清楚;(2)引用计数(存在循环引用时失 ...
join(delimiter): 把数组中各个元素使用分隔符(delimiter)拼成字符串concat(array1, array2, ...): 合并数组,对原数组不影响,只是返回合并后的新数组pop(): 删除并返回最后一个元素push(element1, element2, ...): 在数组末尾追加元素shift(): 删除并返回第一个元素unshift(element1, element2, ...): 在数组开始位置添加元素reverse(): 将数组元素顺序首尾反转sort(function): 给数组排序 如果不给参数,默认按字符排序(所有元素是数字也不会按数字排序的) ...
function selfUserAgent(){
if(window.ActiveXObject){ //MSIE 6.0 or below
//判断是否是IE 7以上
if(document.documentElement && typeof document.documentElement.style.maxHeight != "undefined" ){
//判断是否是IE8+
if(typeof document.adoptNode != "undefined" ...
随着手机用户的发展,随时有可能改变
/^1[3|4|5|8][0-9]\d{8}$/
对于需要跳转新页面的链接,js中的window.open()方法会经常被浏览器拦截而带来不好的用户体验。
解决方法为用a标签的href和target完成打开新窗口,这样将不被浏览器拦截。a标签的跳转为显示跳转,所以不被拦截。可以在a的click事件里动态更改a标签的href属性完成动态打开新窗口的功能。
关闭当前窗口的js:兼容IE 6 7;
<script type="text/javascript">
function selfClose(){
window.opener = null;
window.open('','_self');
window.close();
};
</script>
FF下得先配置允许自关闭:
输入about:config
找到dom.allow_scripts_to_close_windows,设为TRUE就可以了
标识符:指变量、函数、属性的名字,或者函数的参数。标志符规则:
第一个字符必须是一个字母、下划线(_)或一个美元符号($);
其他字符可以使字母、下划线、美元符号或数字;(其中的字母可包含扩展ASCII或Unicode字母字符,但不推荐)
严格模式(ECMAScript 5):在整个脚本中启用严格模式,可以再顶部添加代码:"use strict";也可以放在指定函数内表示在指定函数内执行严格模式。
关键字和保留字(带*号为第5版新增):
关键字:
break,do,instanceof,typeof,case,else,new,var,cat ...
标签的位置:一般把全部JavaScript引用放在<body>元素中,页面内容后面。
延迟脚本(defer="defer"):浏览器立即下载,但延迟执行,延迟到页面解析完成后执行,说明此脚本的执行不会影响页面的构造。
异步脚本(async="async",仅适用于外部脚本):异步加载,立即下载文件,不保证文件加载顺序。
关闭当前图像 【Ctrl】+【W】
打开“预置”对话框 【Ctrl】+【K】
显示最后一次显示的“预置”对话框 【Alt】+【Ctrl】+【K】
设置“常规”选项(在预置对话框中) 【Ctrl】+【1】
设置“存储文件”(在预置对话框中) 【Ctrl】+ ...
据说是处于安全角度考虑,ajax请求不允许跨域,但这却仅限制了传统的html,text,json,xml等格式的数据的请求,而放过了对script格式的数据的请求。也就是说我们可以以script的方式请求一个地址,返回的数据将会以script的方式执行,如此可以通过请求到的脚本在本地创建临时变量,如此实现跨域请求并获得跨域的数据。暂时未研究jsonp是如何实现的,但我猜应该也是基于此原理的...不够严谨了,请见谅
服务器端返回脚本
var temp=[{"name":"felix"},{"sex":"man" ...
[align=left; border: none; padding: 5px; width: 960px; font-size: 14px;][align=center; padding: 5px;]常用正则表达式用户名:/^[a-z0-9_-]{3,16}$/十六进制值:/^#?([a-f0-9]{6}|[a-f0-9]{3})$/URL:/^(https?:\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/?$/HTML 标签:/^(.*)|\s+\/>)$/匹配中文字符的正则表达式: [\u4e00-\u9fa5]评注: ...
在CSS中,让元素隐藏(指屏幕范围内肉眼不可见)的方法很多,有的占据空间,有的不占据空间;有的可以响应点击,有的不能响应点击。
{ display: none; /* 不占据空间,无法点击 */ }
{ visibility: hidden; /* 占据空间,无法点击 */ }
{ position: absolute; top: -999em; /* 不占据空间,无法点击 */ }
{ position: relative; top: -999em; /* 占据空间,无法点击 */ }
{ position: absolute ...
select
获取选择的文字
$("select option[selected]").text();
$("select")[0].selectedOptions[0].innerHTML;//或者innerText
获取选择项的value
$("select option[selected]").val();
$("select")[0]. selectedOptions[0].value;
更改selected项(更改prop或者selected的selectedIndex属 ...
Javascript关键字(Reserved Words)是指在Javascript语言中有特定含义,成为Javascript语法中一部分的那些字。Javascript关键字是不能作为变量名和函数名使用的。使用Javascript关键字作为变量名或函数名,会使Javascript在载入过程中出现编译错误。 Javascript关键字列表: break delete function return typeof case do if switch var
页内存在多个frame,即多个window对象时。如存在一个top frame 和一个name属性为test的子frame。
在top frame中对子frame进行Dom操作
window.frames["test"].document
在ziframe中对top farme 进行Dom操作
window.parent.document
iframe里的js要操作父级窗口的dom,必须搞懂几个对象:
parent是父窗口(如果窗口是顶级窗口,那么parent==self==top),
top是最顶级父窗口(有的窗口中套了好几层framese ...