JavaScript中定义类或对象
1,对象的构成
对象有特性构成(attribute),可以是原始值,也可以是引用值。如果特性存放的是函数,它将被看做对象的方法(method),否则该特性被看做属性(property)。
2,定义类或对象
(1)工厂方式
Code
function createCar(sColor,iDoors) {
var oTempCar = new Object;
oTempCar.color = sColor;
oTempCar.doors = iDoors;
oTempCar.showColor = function() {
alert(this.color);
};
return oTempCar;
}
var oCar1 = createCar("red",4);
var oCar2 = createCar("blue", 3);
oCar1.showColor(); //Output "red"
oCar2.showColor(); //Output "blue"
缺点:
每次调用函数createCar()时,都要创建新函数showColor(),意味着每个对象都有自己的showColor()版本。
改进:
function showColor() {
alert(this.color);
}
function createCar(sColor,iDoors) {
var oTempCar = new Object;
oTempCar.color = sColor;
oTempCar.doors = iDoors;
oTempCar.showColor = showColor;
return oTempCar;
}
var oCar1 
相关文档:
脚本中的事件有2种模型
1、 冒泡型事件:事件是按照从最特定的目标到最不特定的事件目标(document)的顺序依次触发。这是针对不同元素的同一事件类型
如:
<html onclick=”handleClick()”>
<head></head>
<body onclick=”handleClick()”>
<div ......
<SCRIPT LANGUAGE="JavaScript">
<!--
function limitNum(obj) {
if(obj.value.replace(/\s/g,"")==""||obj.value.replace(/\s/g,"")=="输入关键字") {
alert('请输入关键字')
return false;
}
}
//-->
</SCRIPT>
< ......
/*
* JavaScript对象就是一组属性(方法)的集合
* 在该语言中如果变量名或方法名不符合声明规范,
* 则一定得用方括号“ [] ”引用它
*
*/
/**
* <1.>该语句声明了一个class1类,class1相当于构造方法,又叫构造器
* 也可说声明了一个class1方法
......
replace()最简单的算是能力就是简单的字符替换。
示例代码如下:
<script language="javascript">
var strM = "javascript is a good script language";
//在此我想将字母a替换成字母A
alert(strM.replace("a","A"));
</script>
它只替换了首字母。但如 ......
scrollHeight: 获取对象的滚动高度。
scrollLeft:设置或获取位于对象左边界和窗口中目前可见内容的最左端之间的距离
scrollTop:设置或获取位于对象最顶端和窗口中可见内容的最顶端之间的距离
scrollWidth:获取对象的滚动宽度
offsetHeight:获取对象相对于版面或由父坐标 offsetParent 属性指定的父坐标的高度
offsetL ......