JavaScript ×î¼Ñʵ¼ù
Çë±ÜÃâÈ«¾Ö±äÁ¿¡¢new¡¢===¡¢eval()
±ÜÃâÈ«¾Ö±äÁ¿
Ç뾡Á¿ÉÙµØÊ¹ÓÃÈ«¾Ö±äÁ¿¡£
Ëü°üÀ¨ËùÓеÄÊý¾ÝÀàÐÍ¡¢¶ÔÏóºÍº¯Êý¡£
È«¾Ö±äÁ¿ºÍº¯Êý¿É±»ÆäËû½Å±¾¸²¸Ç¡£
ÇëʹÓþֲ¿±äÁ¿Ìæ´ú£¬²¢Ñ§Ï°ÈçºÎʹÓñհü¡£
ʼÖÕÉùÃ÷¾Ö²¿±äÁ¿
ËùÓÐÔÚº¯ÊýÖÐʹÓõıäÁ¿Ó¦¸Ã±»ÉùÃ÷Ϊ¾Ö²¿±äÁ¿¡£
¾Ö²¿±äÁ¿±ØÐëͨ¹ý var ¹Ø¼ü´ÊÀ´ÉùÃ÷£¬·ñÔòËüÃǽ«±ä³ÉÈ«¾Ö±äÁ¿¡£
Ñϸñģʽ²»ÔÊÐíδÉùÃ÷µÄ±äÁ¿¡£
ÔÚ¶¥²¿ÉùÃ÷
Ò»ÏîºÃµÄ±àÂëϰ¹ßÊǰÑËùÓÐÉùÃ÷·ÅÔÚÿ¶Î½Å±¾»òº¯ÊýµÄ¶¥²¿¡£
Õâô×öµÄºÃ´¦ÊÇ£º
- »ñµÃ¸üÕû½àµÄ´úÂë
- ÌṩÁ˲éÕÒ¾Ö²¿±äÁ¿µÄºÃλÖÃ
- ¸üÈÝÒ×±ÜÃâ²»ÐèÒªµÄÈ«¾Ö±äÁ¿
- ¼õÉÙ²»ÐèÒªµÄÖØÐÂÉùÃ÷µÄ¿ÉÄÜÐÔ
// ÔÚ¶¥²¿ÉùÃ÷ var firstName, lastName, price, discount, fullPrice; // ÉÔºóʹÓà firstName = "Bill"; lastName = "Gates"; price = 19.90; discount = 0.10; fullPrice = price * 100 / discount;
Ò²¿ÉÒÔÓÃÓÚÑ»·±äÁ¿£º
// ÔÚ¶¥²¿ÉùÃ÷ var i; // ÉÔºóʹÓà for (i = 0; i < 5; i++) {
ĬÈϵأ¬JavaScript »á½«ËùÓÐÉùÃ÷ÒÆÖÁ¶¥²¿£¨JavaScript hoisting£©¡£
³õʼ»¯±äÁ¿
ÔÚÄúÉùÃ÷±äÁ¿Ê±¶ÔÆä½øÐгõʼ»¯ÊǸöºÃϰ¹ß¡£
Õâô×öµÄºÃ´¦ÊÇ£º
- ¸üÕû½àµÄ´úÂë
- ÔÚµ¥¶ÀµÄλÖÃÀ´³õʼ»¯±äÁ¿
- ±ÜÃâ䶨ÒåÖµ
// ÔÚ¿ªÍ·½øÐÐÉùÃ÷ºÍ³õʼ»¯
var firstName = "",
lastName = "",
price = 0,
discount = 0,
fullPrice = 0,
myArray = [],
myObject = {};
±äÁ¿³õʼ»¯Ê¹ÎÒÃÇÄܹ»Á˽âÔ¤ÆÚÓÃ;ºÍÔ¤ÆÚµÄÊý¾ÝÀàÐÍ¡£
Çë²»ÒªÉùÃ÷ÊýÖµ¡¢×Ö·û´®»ò²¼¶û¶ÔÏó
ÇëʼÖÕ½«ÊýÖµ¡¢×Ö·û´®»ò²¼¶ûÖµÊÓ×÷Ôʼֵ¡£¶ø·Ç¶ÔÏó¡£
Èç¹û°ÑÕâЩÀàÐÍÉùÃ÷Ϊ¶ÔÏ󣬻áÍÏÂýÖ´ÐÐËÙ¶È£¬²¢²úÉúÌÖÑáµÄ¸±×÷Óãº
ʵÀý
var x = "Bill";
var y = new String("Bill");
(x === y) // ½á¹ûΪ false£¬ÒòΪ x ÊÇ×Ö·û´®£¬¶ø y ÊǶÔÏó¡£
»òÕßÉõÖÁ¸üÔ㣺
ʵÀý
var x = new String("Bill");
var y = new String("Bill");
(x == y) // ½á¹ûÊÇ false£¬ÒòΪÄãÎÞ·¨±È½Ï¶ÔÏó¡£
ÇëÎðʹÓà new Object()
- ÇëʹÓà {} À´´úÌæ new Object()
- ÇëʹÓà "" À´´úÌæ new String()
- ÇëʹÓà 0 À´´úÌæ new Number()
- ÇëʹÓà false À´´úÌæ new Boolean()
- ÇëʹÓà [] À´´úÌæ new Array()
- ÇëʹÓà /()/ À´´úÌæ new RegExp()
- ÇëʹÓà function (){}À´´úÌæ new Function()
ʵÀý
var x1 = {}; // жÔÏó var x2 = ""; // еÄÔʼ×Ö·û´®Öµ var x3 = 0; // еÄÔʼÊýÖµ var x4 = false; // еÄÔʼ²¼¶ûÖµ var x5 = []; // еÄÊý×é¶ÔÏó var x6 = /()/; // еÄÕýÔò±í´ïʽ var x7 = function(){}; // еĺ¯Êý¶ÔÏó
Òâʶµ½×Ô¶¯ÀàÐÍת»»
ÇëÒâʶµ½ÊýÖµ»á±»ÒâÍâת»»Îª×Ö·û´®»ò NaN£¨Not a Number£©¡£
JavaScript ÊôÓÚËÉÉ¢ÀàÐÍ¡£±äÁ¿¿É°üº¬²»Í¬µÄÊý¾ÝÀàÐÍ£¬²¢ÇÒ±äÁ¿Äܹ»¸Ä±äÆäÊý¾ÝÀàÐÍ£º
ʵÀý
var x = "Hello"; // typeof x Ϊ×Ö·û´® x = 5; // °Ñ typeof x ¸ü¸ÄΪÊýÖµ
Èç¹û½øÐÐÊýѧÔËË㣬JavaScript Äܹ»½«Êýֵת»»Îª×Ö·û´®£º
ʵÀý
var x = 5 + 7; // x.valueOf() ÊÇ 12, typeof x ÊÇÊýÖµ var x = 5 + "7"; // x.valueOf() ÊÇ 57, typeof x ÊÇ×Ö·û´® var x = "5" + 7; // x.valueOf() ÊÇ 57, typeof x ÊÇ×Ö·û´® var x = 5 - 7; // x.valueOf() ÊÇ -2, typeof x ÊÇÊýÖµ var x = 5 - "7"; // x.valueOf() ÊÇ -2, typeof x ÊÇÊýÖµ var x = "5" - 7; // x.valueOf() ÊÇ -2, typeof x ÊÇÊýÖµ var x = 5 - "x"; // x.valueOf() ÊÇ NaN, typeof x ÊÇÊýÖµ
ÓÃ×Ö·û´®¼õÈ¥×Ö·û´®£¬²»»á²úÉú´íÎó¶øÊÇ·µ»Ø NaN£¨Not a Number£©£º
ʵÀý
"Hello" - "Dolly" // ·µ»Ø NaN
ʹÓà === ±È½Ï
== ±È½ÏÔËËã·û×ÜÊÇÔڱȽÏ֮ǰ½øÐÐÀàÐÍת»»£¨ÒÔÆ¥ÅäÀàÐÍ£©¡£
=== ÔËËã·û»áÇ¿ÖÆ¶ÔÖµºÍÀàÐͽøÐбȽϣº
ʵÀý
0 == ""; // true 1 == "1"; // true 1 == true; // true 0 === ""; // false 1 === "1"; // false 1 === true; // false
ʹÓà Parameter Defaults
Èç¹ûµ÷Óú¯ÊýʱȱÉÙÒ»¸ö²ÎÊý£¬ÄÇôÕâ¸öȱʧ²ÎÊýµÄÖµ»á±»ÉèÖÃΪ undefined¡£
undefined Öµ»áÆÆ»µÄúµÄ´úÂ롣Ϊ²ÎÊýÉèÖÃĬÈÏÖµÊÇÒ»¸öºÃϰ¹ß¡£
ʵÀý
function myFunction(x, y) { if (y === undefined) { y = 0; } }
ÇëÔÚº¯Êý²ÎÊýÕâÒ»ÕÂÔĶÁ¸ü¶àÓйغ¯Êý²ÎÊýµÄÄÚÈÝ¡£
Óà default À´½áÊø switch
ÇëʹÓÃʹÓà default À´½áÊøÄúµÄ switch Óï¾ä¡£¼´Ê¹ÄúÈÏΪûÓÐÕâ¸ö±ØÒª¡£
ʵÀý
switch (new Date().getDay()) { case 0: day = "Sunday"; break; case 1: day = "Monday"; break; case 2: day = "Tuesday"; break; case 3: day = "Wednesday"; break; case 4: day = "Thursday"; break; case 5: day = "Friday"; break; case 6: day = "Saturday"; break; default: day = "Unknown"; }
±ÜÃâʹÓà eval()
eval() º¯ÊýÓÃÓÚ½«Îı¾×÷Ϊ´úÂëÀ´ÔÊÐí¡£ÔÚ¼¸ºõËùÓÐÇé¿öÏ£¬¶¼Ã»ÓбØÒªÊ¹ÓÃËü¡£
ÒòΪÔÊÐíÈÎÒâ´úÂëÔËÐУ¬ËüͬʱҲÒâζ×Ű²È«ÎÊÌâ¡£