Javascript¼Ì³Ð»úÖÆ£¨call¡¢apply¡¢prototype£©
JavascriptµÄ¼Ì³Ð¿ÉÒÔͨ¹ýcall¡¢apply¡¢prototypeʵÏÖ¡£
1¡¢call£ºÔÚ×ÓÀàÖУ¬Óø¸Àà.call£¨this£¬arg0£¬arg1...£©¿ÉÒԼ̳и¸Àà¡£×¢ÒâcallµÄλÖ㬾¡Á¿ÔÚ×ÓÀàµÄµÚÒ»ÐУ¨js°´Ë³ÐòÖ´ÐУ¬·ÅÔÚºóÃæ¿ÉÄܶÔ×ÓÀàµÄÆäËûÊôÐÔ¡¢·½·¨ÓÐÓ°Ïì¡£±ÈÈç×ÓÀàºÍ¸¸ÀàÓÐÏàͬÃû×ֵķ½·¨£¬ºóÃæµÄ¸²¸ÇÇ°ÃæµÄ£©¡£
<html>
<head>
<title>call\apply\prototype test</title>
</head>
<script type="text/javascript">
//personÀà
function person(name, age) {
this.name = name;
this.age = age;
this.say = function() {
document.write("I am a person");
}
this.display = function() {
document.write(this.name + "-" + this.age);
}
}
//studentÀ࣬¼Ì³Ð×Ôperson
function student(name, age, no) {
person.call(this, name, age);//personÖеÄthisµÈÓÚ²ÎÊýÖеÄthis£¬¼´studentÖеÄnameºÍage
this.no = no;
this.display = function() {//¸²¸ÇÁ˸¸ÀàµÄ·½·¨
document.write(this.name + "-" + this.age + "-" + this.no);
}
}
//´´½¨personÀà
var p = new person("captain", 21);
p.display();//captain-21
p.say();//I am a person
//´´½¨studentÀà
var s = new student("captain", 21, "06281097")
s.display();//captain-21-06281097
s.say();//I am a person ¼Ì³ÐÁ˸¸ÀàµÄ·½·¨
<script>
<body>
</body>
</html>
2¡¢apply£ºÔÚ×ÓÀàÖУ¬Óø¸Àà.apply£¨this£¬args£©¿ÉÒԼ̳и¸ÀࣨargsΪ²ÎÊýÊý×飩¡£
<html>
<head>
<title>call\apply\prototype test</title>
</head>
<script type="text/javascript">
//personÀà
function person(name, age) {
this.name = name;
this.age = age;
this.say = function() {
document.write("I am a person");
}
this.display = function() {
document.write(this.name + "-" + this.age);
}
}
//studentÀ࣬¼Ì³Ð×Ôperson
function student(name, age, no) {
person.apply(this, new Array(name, age));//Óëcall²»Í¬µÄÊÇ£¬apply´«µÝµÄÊÇÊý×é
this.no = no;
this.display = function() {//¸²¸ÇÁ˸¸ÀàµÄ·½·¨
document.write(this.name + "-" + this.age + "-" + this.no);
}
}
//´´½¨pe
Ïà¹ØÎĵµ£º
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>JSµ÷ÓÃÏÖ³ÉWordÄ£°åÍê³É´òÓ¡</title>
<script type="text/javascript">
//ת»»wordµÄº¯Êý
function ......
ÉèΪÊ×Ò³ºÍÌí¼ÓÊղصÄJavascript´úÂ룬¼æÈÝÐÔ»¹¿ÉÒÔ£¬¸÷ÖÖÖ÷Á÷ä¯ÀÀÆ÷¶¼²âÊÔͨ¹ýÁË¡£
function addfavorite(){//¼ÓÈëÊÕ²Ø
if (document.all){
window.external.addFavorite("http://"+document.location.host+"/",document.title);
}else if (window.sidebar){
window.sidebar.addPanel(document.tit ......
ADF 11g²»ÔÙÖ§³ÖOnclickµÈJavaScript£¬¶øÊDzÉÓÃ<af:clientListener>À´ÊµÏÖÖîÈçɾ³ýijÌõ¼Ç¼µÄÌáʾ¿ò¡£
ʵÏÖ·½Ê½ÈçÏ£º
function confirmDelete() {
if (confirm('Are you sure you want to delete this record?'))
return true;
else
return false;
}
<af:commandLink actionListener="# ......
Ç°Ì¨Ò³ÃæÎª ×ÓÒ³ÃæÎªÒ»¸ö°´Å¥£º
<form id="form1" runat="server">
<div>
<asp:Button runat="server" ID="Bt_Add" Text="Ìí¼Ó" Width="80px" Height="20px" OnClick="Bt_Add_Click" />
</div>
  ......
½ñÌìÒªÏò´ó¼ÒÍÆ¼ö9¿îºÜ°ôµÄ¿ÉÔÚÍøÒ³ÖлæÖÆÍ¼±íµÄJavaScript½Å±¾£¬ÕâЩÓÐȤµÄJS½Å±¾¿ÉÒÔ°ïÖúÄã¿ìËÙ·½±ãµÄ»æÖÆÍ¼±í£¨Ïß¡¢Ãæ¡¢±ý¡¢Ìõ…£©£¬ÆäÖаüÀ¨jQuery¡¢MooTools¡¢PrototypeºÍһЩÆäËüµÄJavaScript¿ò¼Ü¡£
Äú»¹¿ÉÒԲο¼ÒÔÏÂJavaScript/CSSÏà¹Ø½Ì³Ì¼°×ÊÔ´:
¡¶¾«Ñ¡30¸öÓÅÐãµÄCSS¼¼Ê ......