JavaScriptÃæÏò¶ÔÏó³ÌÐòÉè¼Æ(7): ±Õ°ü
±¾²©¿Í×ªÔØÓÚ£ºhttp://devbean.javaeye.com/blog/409566
±Õ°üÕâ¸ö¸ÅÄî¿´ÉÏÈ¥ºÜÉî°Â£¬Õâ¸ö´ÊÔÚÀëÉ¢ÊýѧÀïÃæµÄÒâ˼ȷʵ±È½ÏÄÑÓÚÀí½â¡£ÔÚÕâÀÎÒÃÇÏÈ¿ÉÒ԰ѱհüÀí½â³ÉÊÇÒ»ÖÖÄäÃûº¯Êý»òÕßÄäÃûÀà¡£
1. ʲôÊDZհü£¿
ʲôÊDZհü£¿Ò»ÖÖÕýʽµÄ½âÊÍÊÇ£ºËùν±Õ°ü£¬Ö¸µÄÊÇÒ»ÖÖÓµÓкܶà±äÁ¿²¢ÇÒ°ó¶¨ÁËÕâЩ±äÁ¿µÄ»·¾³µÄ±í´ïʽ(ͨ³£ÊÇÒ»¸öº¯Êý)£¬Òò¶øÕâЩ±äÁ¿Ò²ÊÇÕâ¸ö±í´ïʽµÄÒ»²¿·Ö¡£
ÏàÐźܶàÈ˶¼²»»áÀí½âÕâ¸ö¶¨Ò壬ÒòΪËûµÄѧÊõζµÀ̫ŨÁË——»òÐíÄãϲ»¶´Ó×ÖÃæµÄÓï·¨ÉϽøÐзÖÎö£ºÊ×ÏÈ£¬ËüÊÇÒ»¸ö±í´ïʽ£¬Õâ¸ö±í´ïʽ°ó¶¨Á˺ܶà±äÁ¿ÒÔ¼°ÕâЩ±äÁ¿µÄ»·¾³¡£²»¹ýÕⲢûÓÐʲôÒâÒ壬ÕâÒÀÈ»²»»á¸æËßÎÒÃÇʲôÊDZհü¡£
ÄÇô£¬À´¿´Ò»¸öÀý×Ó£º
Js´úÂë
function add(a) {
return function(b) {
return a + b;
};
}
var func = add(10);
alert(func(20));
ÎÒÏë¾¹ýÁËÇ°ÃæÓйغ¯ÊýµÄÃèÊö£¬Õâ¸öÀý×ÓÓ¦¸ÃºÜÇå³þµÄÀí½â¡£JavaScriptÀïÃæµÄº¯Êý¾ÍÊǶÔÏó£¬Ëû¿ÉÒÔ×ö¶ÔÏóÄÜ×öµÄÒ»ÇÐÊÂÇé——ÎÒÃÇÊ×Ïȶ¨ÒåÁËÒ»¸öº¯Êýadd£¬Ëü½ÓÊÜÒ»¸ö²ÎÊý£¬Õâ¸öº¯Êý·µ»ØÒ»¸öÄäÃûº¯Êý£¬Õâ¸öÄäÃûº¯ÊýÒ²½ÓÊÜÒ»¸ö²ÎÊý£¬²¢Çһ᷵»ØÕâ¸ö²ÎÊýͬÍⲿº¯ÊýµÄÄǸö²ÎÊýµÄºÍ¡£Òò´ËÔÚÎÒÃÇʹÓõÄʱºò£¬ÎÒÃǽ«add·µ»ØµÄÄäÃûº¯Êý¸³Öµ¸øfunc£¬È»ºóµ÷ÓÃfunc£¬¾Í·µ»ØÁËÕâÁ½¸öÊýµÄºÍ¡£
µ±ÎÒÃÇ´´½¨Ò»¸öÕâÑùµÄº¯Êý£¬Õâ¸öº¯ÊýÄÚ²¿µÄÒ»¸ö±äÁ¿Äܹ»ÔÚº¯ÊýÍâÃæ±»ÒýÓÃʱ£¬ÎÒÃǾͳƴ´½¨ÁËÒ»¸ö±Õ°ü¡£×ÐϸµÄƷζһÏ£ºÕâ¾ÍÊÇÄǸö±Õ°üµÄ¶¨Òå¡£
¿´¿´ÎÒÃǵĴúÂ룺Ê×ÏÈ£¬ËüÓÐÒ»¸öÄÚ²¿±äÁ¿£¬¾ÍÊÇÄǸöÄäÃûº¯Êý£»Æä´Î£¬Õâ¸öº¯Êý½«ÄäÃûº¯Êý·µ»ØÁ˳öÈ¥£¬ÒÔ±ãÍâÃæµÄ±äÁ¿¿ÉÒÔÒýÓõ½ÄÚ²¿¶¨ÒåµÄ±äÁ¿¡£
2. ±Õ°üµÄ×÷ÓÃ
±Õ°üÓÐʲôÓÃÄØ£¿»òÐíÏÖÔÚ»¹¿´²»³öÀ´£¬ÄÇô¿´¿´Õâ¶Î´úÂ룺
Js´úÂë
function inc(a) {
var i = 0;
return function() {
return i;
};
}
var num = inc();
alert(num());
±¾À´£¬Õâ¸ö±äÁ¿ i ÔÚº¯ÊýÍâÃæÊÇ·ÃÎʲ»µ½µÄ£¬ÒòΪËüÊÇ var ¶¨ÒåµÄ£¬Ò»µ©Ìø³ö×÷ÓÃÓò£¬Õâ¸ö±äÁ¿¾Í±»À¬»ø»ØÊÕÁË£¬µ«ÊÇ£¬ÓÉÓÚÎÒÃÇʹÓÃÁ˱հü£¬ÔÚÍâÃæÊÇÄܹ»·ÃÎʵ½Õâ¸ö±äÁ¿µÄ£¬Òò´ËËü²¢²»±»À¬»ø»ØÊÕ£¡
Èç¹û»¹ÊDz»Ã÷°×±Õ°üµÄ×÷Óã¬ÄÇô¿´Ò»¶ÎÓ¦¸ÃºÜÊìϤµÄ´úÂ룺
Js´úÂë
function Person() {
var id;
this.getId = function() {
return id;
}
this.setId = function(newId) {
id = newId;
}
}
var p = new Person();
Ïà¹ØÎĵµ£º
½üÈÕÊÕ¼¯ÉÏÍòÐдúÂ룬ÕûÀíһЩ³öÀ´¡£
//V8ÒýÇæµÄʵÏÖ
function ToInteger( n ) {
n = Number( n );
var sign = ( n < 0 ) ? -1 : 1;
if ( n != n ) {
return 0;
}
if ( Math.abs( n ) == 0 || Math.abs( n ) == Number.POSITIVE_INFINITY ) {
......
Javascript
ÊÇÒ»¸öºÜÇ¿´óºÜÁé»îµÄÓïÑÔ£¬Äã¼È¿ÉÒÔ°ÑËüµ±×÷ÃæÏò¹ý³ÌµÄÓïÑÔ£¬Ò²¿ÉÒÔ°ÑËüµ±×÷ÃæÏò¶ÔÏóµÄÓïÑÔÀ´Óá£ÕâÆªÖ÷Ҫ̽ÌÖÒ»ÏÂÈçºÎÓÃjavascriptÀ´ÊµÏÖÒ»¸ö
SingletonÀà¡£ÏàÐÅÓÐЩ±à³Ì¾ÑéµÄÅóÓÑÃǶÔSingletonģʽ¶¼ºÜÊìϤ¡£Singleton
ģʽÖ÷ÒªÓÃÀ´ÏÞÖÆÒ»¸öÀàµÄ¶à´ÎʵÀý»¯¡£Ò»°ãÀ´ËµÏµÍ³´´½¨µÄʵÀýÔ½ÉÙ£¬Õ¼ÓÃ×ÊÔ´Ô ......
¼òµ¥µÄjavascriptÍÏקʵÀý----> ±¾ÈËÔ´´£¨244796562@qq.com£©
<html>
<head>
<title>ÍÏ×§²âÊÔ</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<div id="box" style="position:absolute;top:100px;left:200px;width ......
javascript ÖеÄwindow.open()º¯ÊýÓ÷¨
¾³£ÉÏÍøµÄÅóÓÑ¿ÉÄܻᵽ¹ýÕâÑùÒ»Ð©ÍøÕ¾£¬Ò»½øÈëÊ×Ò³Á¢¿Ì»áµ¯³öÒ»¸ö´°¿Ú£¬
»òÕß°´Ò»¸öÁ¬½Ó»ò°´Å¥µ¯³ö£¬Í¨³£ÔÚÕâ¸ö´°¿ÚÀï»áÏÔʾһЩעÒâÊÂÏî¡¢°æÈ¨ÐÅÏ¢
¡¢¾¯¸æ¡¢»¶Ó¹â¹ËÖ®ÀàµÄ»°»òÕß×÷ÕßÏëÒªÌØ±ðÌáʾµÄÐÅÏ¢¡£ÆäÊµÖÆ×÷ÕâÑùµÄÒ³Ãæ
Ч¹û·Ç³£µÄÈÝÒ×£¬Ö»ÒªÍù¸ÃÒ³ÃæµÄHTMLÀï¼ÓÈ뼸¶ÎJ ......
JavaScript ÊÇ Web ¿ª·¢ÓëÉè¼ÆÖв»¿É»òȱµÄ¶«Î÷£¬²»¹ÜÊÇÒ»¸ö¼òµ¥µÄÍøÒ³»¹ÊÇÒ»¸öרҵµÄÕ¾µã£¬Ò²²»¹ÜÄãÊǸßÊÖ»¹ÊDzËÄñ£¬Èç½ñ
JavaScript ¿âÔ½À´Ô½Ç¿´ó£¬¿ÉÒÔʤÈÎÐí¶à¸´ÔӵŤ×÷£¬È»¶øÍ¬Ê±£¬ÈËÃÇÔÚÖÚ¶à JavaScript ¿âÃæÇ°ÓÖ¾õµÃÎÞËùÊÊ´Ó£¬±¾ÎÄ£¬ÎÒÃǽ«Ê¹ÓÃ
Google ËÑË÷³öÅÅÃûǰ 10 λµÄ JavaScript ¿â£¬²¢¶ÔËüÃÇÖðÒ»½øÐнéÉÜ ......