Javascript Best Practices
1. 总是使用 ‘var’
在JavaScript
中,变量不是全局范围的就是函数范围的,使用”var”关键词将是保持变量简洁明了的关键。当声明一个或者是全局或者是函数级(function-level)的变量,需总是前置”var”关键词,下面的例子将强调不这样做潜在的问题。
不使用 Var 造成的问题
var i=0; // This is good - creates a global variable
function test() {
for (i=0; i<10; i++) {
alert("Hello World!");
}
}
test();
alert(i); // The global variable i is now 10!
因为变量函数中变量 i 并没有使用 var 使其成为函数级的变量,在这个例子中它引用了全局变量。总是使用 var 来声明全局变量是一个很多的做法,但至关重要的一点是使用 var 定义一个函数范围的变量。下面这两个方法在功能上是相同的:
正确的函数
function test() {
var i=0;
for (i=0; i<10; i++) {
alert("Hello World!");
}
}
正确的函数
function test() {
for (var
i=0; i<10; i++) {
alert("Hello World!");
}
}
2. 特性检测而非浏览器检测
一些代码是写来发现浏览器版本并基于用户正使用的客户端的对其执行不同行为。这个,总的来说,是一个非常糟的实践。更好的方法是使用特性检测,在使
用一个老浏览器可能不支持的高级的特性之前,首先检测(浏览器的)是否有这个功能或特性,然后使用它。这单独检测浏览器版本来得更好,即使你知道它的性
能。你可以在 http://www.jibbering.com/faq/faq_notes/not_browser_detect.html
找到一个深入讨论这个问题的文章。
例子:
if (document.getElementById) {
var element = document.getElementById('MyId');
}
else {
alert('Your browser lacks the capabilities required to run this script!');
}
3. 使用方括号记法
当访问由执行时决定或者包括要不能用”.”号访问的对象属性,使用方括号记法。如果你不是一个经验丰富的Javascript
程序员,总是使用方括号是一个不错的做法
对象的属性由两种固定的方法来访问:”.”记法和”[ ]“方括号记法:
“.”号记法
MyObject.property
“[ ]“方括号记法
MyObject["property"]
使用”.”号,属性名是硬代码,不能在执行时改变。使用”[
相关文档:
为了实现checkbox多选验证,使用jquery.validate , 无法实现自定义错误信息。上午Linchun带着我一块儿看jquery.validate.js 的源代码,发现优秀的代码真的是对JavaScript用的炉火纯青~ :)
delete 运算符:
是ECMAScript一元运算符。一元运算符只有一个参数,即要操作的对象或值。它们是 ......
方法一、
NPN_GetURL(m_Instance, "javascript:test()", NULL);
方法二、
NPVariant rval;
NPN_InvokeDefault(m_Npp, objectDisconnect ,NULL, 0,&rval);
NPN_ReleaseVariantValue(&rval);
以下是javascript
<script type="text/javascript">
&nb ......
1. oncontextmenu="window.event.returnValue=false" 将彻底屏蔽鼠标右键
<table border oncontextmenu=return(false)><td>no</table> 可用于Table
2. <body onselectstart="return false"> 取消选取、防止复制
3. onpaste="return false" 不准粘贴
4. oncopy="return false;" oncut="return f ......
meta是用来在HTML文档中模拟HTTP协议的响应头报文。
meta 标签用于网页的<head>与</head>中,meta 标签的用处很多。
meta 的属性有两种:name和http-equiv。name属性主要用于描述网页,
对应于content(网页内容),以便于搜索引擎机器人查找、分类
(目前几乎所有的搜索引擎都使用网上机器人自动查找m ......