对于面向对象,发表我个人的理解:
任何物体都视为一个对象,每个对象有自己的操作方法和属性。比如说吧:开发一个员工管理系统,抽象出一个员工的类。员工有工资和年龄作为数据成员,增工资、减工资等作为成员函数。因此,员工类可以为每一个员工定义一个实例,这样的实例就称为对象。
另外,对象与对象之间是可以交互的。
面象对象的四大特性,也可以再说一下,抽象,封装,继承,多态。
抽象是面象对象语言支持的一个特性,抽象指跟据实际应用抽取与用途有关的对象的属性和方法。
多态指对象在不同的环境可以产生不同的行为。
针对CSS
.--class
针对javascript中书写规则
一,凡是事件,脚本中均用小写格式。如:onclick
二,其他的,不论此关键字是由一个或多个单词组成,第一个字母统一为小写。如:toString(),split...
(切记:这一点要同C#中区分开来!!)
arguments对象
在JS函数代码中,使用特殊对象arguments,开发者无需明确指出参数名,就能访问他们。例如:
{
if(sMessage=="bye")
{ return;
}
alert(sMessage);
}
//可以直接写成
function sayHi(sMessage)
{
if(arguments[0]=="bye")//索引从0开始
{ return;
}
alert(arguments[0]);
}
//另外,可以通过它的length属性来检测传递给函数的参数个数值,例:
function howManyArgs(){
alert(arguments.length);
}
howManyArgs("string",45);// outputs "2"
howManyArgs(); // outputs "0"
howManyArgs(12); // outputs "1"
转换格式符 \"
ClientScript.RegisterStartupScript(this.GetType(), "onclick", "<script type=\"text/javascript\">alert(@'保存成功 "+navi.OuterXml+"')</script>");
Function对象
Function对象也有与所有对象共享的标准valueof()方法和toString()方法。这两个字法返回的都是函数的源代码,在调试时尤其有用。例如:
alert(iNum+10);
}
alert(doAdd.toString());//valueOf()返回的是同样的结果
这段代码输出了doAdd()函数的文本,如图:
关键字this
关键字this总是指向调用该方法的对象,例如:
oCar.color="red";
oCar.showColor=function(){
alert(this.color);//outputs "red"
};
//注意,引用对象的属性时,必须使用this关键字。
使用mouseover和 mouseout事件是改变而面上某个东西的观观众的一个很流行的方法,比如:
PS:你看出什么端倪了吗?
HTML事件
当你直接在JS中写事件脚本时,均用window开头,例:
<head>
<script type="text/javascript">
window.onscroll=function(){
var oTextbox=ducument.getElementById(txt1);
oTextbox.value +="\nscroll is at" + document.body.scrollLeft + "horisontally and " + document.body.scrollTop +" vertically.";
}
</script>
</head>
<body>
<textarea rows="15" cols="50" id="txt1"></textarea>
</body>
那么还能否给document.body.onscroll分配事件处理函数呢?当然可以。问题是,在而面还未载入完</body>标签前,document.body是不存在的。所以,如果这么写,会出现错误。
记住JS中关于以下三个数组操作方法
arrayObject.put(..);
arrayObject.splice(index,howmany,element1,.....,elementX)
必需。规定从何处添加/删除元素。
该参数是开始插入和(或)删除的数组元素的下标,必须是数字。
howmany
必需。规定应该删除多少元素。必须是数字,但可以是 "0"。
如果未规定此参数,则删除从 index 开始到原数组结尾的所有元素。
element1 可选。规定要添加到数组的新元素。从 index 所指的下标处开始插入。
elementX 可选。可向数组添加若干元素。
arrayObject.reverse();