易截截图软件、单文件、免安装、纯绿色、仅160KB
热门标签: c c# c++ asp asp.net linux php jsp java vb Python Ruby mysql sql access Sqlite sqlserver delphi javascript Oracle ajax wap mssql html css flash flex dreamweaver xml
 最新文章 : javascript

JavaScript 面向对象

(转http://www.javaeye.com/topic/155109)
JavaScript 是面向对象的。但是不少人对这一点理解得并不全面。
在 JavaScript 中,对象分为两种。一种可以称为“普通对象”,就是我们所普遍理解的那些:数字、日期、用户自定义的对象(如:{})等等。
还有一种,称为“方法对象”,就是我们通常定义的 function。你可能觉得奇怪:方法就是方法,怎么成了对象了?但是在 JavaScript 中,方法的确是被当成对象来处理的。下面是一个简单的例子:
Js代码
function func() {alert('Hello!');}   
alert(func.toString());  
function func() {alert('Hello!');}
alert(func.toString());
在这个例子中,func 虽然是作为一个方法定义的,但它自身却包含一个 toString 方法,说明 func 在这里是被当成一个对象来处理的。更准确的说,func 是一个“方法对象”。下面是例子的继续:
Js代码
func.name = “I am func.”;   
alert(func.name);  
func.name = “I am func.”;
alert(func.name);
我们可以任意的为 func 设置属性,这更加证明了 ......

Javascript可移动窗口的设计

<html>
 <head><title>js可移动窗口的设计</title>
<script  language="javascript">
var x0=0,y0=0,x1=0,y1=0;//初始化全局变量
var offx=6,offy=6;
var moveable=false;
var hover='orange';//color;
var index=10000;//z-index;
//关闭窗口
function closeWin(id)
{  
 document.getElementById(id).style.display=document.getElementById(id).style.display=="none"?"block":"none";
}
//点击鼠标右键准备开始拖动窗口
function startDrag(obj)
{
 if(event.button==1) {  
  obj.setCapture();//设置鼠标捕获的对象为当前对象,简单说就是获得鼠标拖动
  var win = obj;  
  
  x0 = event.clientX;//记录点击鼠标右键的鼠标坐标
  y0 = event.clientY;
  
  x1 = parseInt(win.style.left);//记录框架的初始位置——鼠标坐标
  y1 = parseInt(win.style.top);
  
  normal = obj.style.backgroundColor;  
  win.s ......

JavaScript replace() 方法

JavaScript replace() 方法
JavaScript String 对象参考手册
定义和用法
replace() 方法用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。
语法
stringObject.replace(regexp,replacement)
参数描述
regexp
必需。规定了要替换的模式的 RegExp 对象。请注意,如果该值是一个字符串,则将它作为要检索的直接量文本模式,而不是首先被转换为 RegExp 对象。
replacement
必需。一个字符串值。规定了替换文本或生成替换文本的函数。
返回值
一个新的字符串,是用 replacement 替换了 regexp 的第一次匹配或所有匹配之后得到的。
说明
字符串 stringObject 的 replace() 方法执行的是查找并替换的操作。它将在 stringObject 中查找与 regexp 相匹配的子字符串,然后用 replacement 来替换这些子串。如果 regexp 具有全局标志 g,那么 replace() 方法将替换所有匹配的子串。否则,它只替换第一个匹配子串。
replacement 可以是字符串,也可以是函数。如果它是字符串,那么没有匹配都将由字符串替换。但是 replacement 中的 $ 字符具有特定的含义。如下表所示,它说明从模式匹配得到的字符串将用于替换。
字符替换文本
$1、$2、...、$99 ......

javascript with用法(转)

with
(object)
   statements
参数
object
新的默认对象。
statements
一个或多个语句,object 是该语句的默认对象。
说明
with
语句通常用来缩短特定情形下必须写的代码量。在下面的例子中,请注意 Math 的重复使用:
x = Math.cos(3 * Math.PI) + Math.sin(Math.LN10)
y = Math.tan(14 * Math.E)
当使用 with
语句时,代码变得更短且更易读:
with
(Math){
   x = cos(3 * PI) + sin (LN10) 
   y = tan(14 * E)
}
......

理解Javascript闭包(closure)

一、什么是闭包?
“官方”的解释是:所谓“闭包”,指的是一个拥有许多变量和绑定了这些变量的环境的表达式(通常是一个函数),因而这些变量也是该表达式的一部分。
相信很少有人能直接看懂这句话,因为他描述的太学术。我想用如何在Javascript中创建一个闭包来告诉你什么是闭包,因为跳过闭包的创建过程直接理解闭包的定义是非常困难的。看下面这段代码: 
function a(){
 var i=0;
 function b(){
 alert(++i);
 }
 return b;
}
var c = a();
c();
这段代码有两个特点:
1、函数b嵌套在函数a内部;
2、函数a返回函数b。
这样在执行完var c=a()后,变量c实际上是指向了函数b,再执行c()后就会弹出一个窗口显示i的值(第一次为1)。这段代码其实就创建了一个闭包,为什么?因为函数a外的变量c引用了函数a内的函数b,就是说:
当函数a的内部函数b被函数a外的一个变量引用的时候,就创建了一个闭包。
我猜想你一定还是不理解闭包,因为你不知道闭包有什么作用,下面让我们继续探索。
二、闭包有什么作用?
简而言之,闭包的作用就是在a执行完并返回后,闭包使得 ......

深入理解JavaScript的变量作用域

深入理解JavaScript的变量作用域
http://www.cnblogs.com/rainman/archive/2009/04/28/1445687.html
在学习JavaScript的变量作用域之前,我们应当明确几点:
a、JavaScript的变量作用域是基于其特有的作用域链的。
b、JavaScript没有块级作用域。
c、函数中声明的变量在整个函数中都有定义。
1、JavaScript的作用域链
首先看下下面这段代码:
Code
<script type="text/javascript" language="javascript">
var rain = 1;
function rainman(){
var man = 2;
function inner(){
var innerVar = 4;
alert(rain);
}
inner();    //调用inner函数
}
rainman();    //调用rainman函数
</script>
观察alert(rain);这句代码。JavaScript首先在inner函数中查找是否定义了变量rain,如果定义了则使用inner函数中的 rain变量;如果inner函数中没有定义rain变量,JavaScript则会继续在rainman函数中查找是否定义了rain变量,在这段代码中rainman函数体内没有定义rain变量,则JavaScript引擎会继续向上(全局对象)查找是否定义了rain;在全局对象中我们定义了 rain = 1,因此最终结果会弹出'1'。
作用域链:JavaScript需 ......
总记录数:2244; 总页数:374; 每页6 条; 首页 上一页 [152] [153] [154] [155] 156 [157] [158] [159] [160] [161]  下一页 尾页
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号