ECMAScript ÀàÐÍת»»
ËùÓгÌÐòÉè¼ÆÓïÑÔ×îÖØÒªµÄÌØÕ÷Ö®Ò»ÊǾßÓнøÐÐÀàÐÍת»»µÄÄÜÁ¦¡£
ECMAScript ¸ø¿ª·¢ÕßÌṩÁË´óÁ¿¼òµ¥µÄÀàÐÍת»»·½·¨¡£
´ó²¿·ÖÀàÐ;ßÓнøÐмòµ¥×ª»»µÄ·½·¨£¬»¹Óм¸¸öÈ«¾Ö·½·¨¿ÉÒÔÓÃÓÚ¸ü¸´ÔÓµÄת»»¡£ÎÞÂÛÄÄÖÖÇé¿ö£¬ÔÚ ECMAScript ÖУ¬ÀàÐÍת»»¶¼ÊǼò¶ÌµÄÒ»²½²Ù×÷¡£
ת»»³É×Ö·û´®
ECMAScript µÄ Boolean Öµ¡¢Êý×ÖºÍ×Ö·û´®µÄÔʼֵµÄÓÐȤ֮´¦ÔÚÓÚËüÃÇÊÇα¶ÔÏó£¬ÕâÒâζ×ÅËüÃÇʵ¼ÊÉϾßÓÐÊôÐԺͷ½·¨¡£
ÀýÈ磬Ҫ»ñµÃ×Ö·û´®µÄ³¤¶È£¬¿ÉÒÔ²ÉÓÃÏÂÃæµÄ´úÂ룺
var sColor = "red";
alert(sColor.length); //Êä³ö "3"
¾¡¹Ü "red" ÊÇÔʼÀàÐ͵Ä×Ö·û´®£¬ËüÈÔÈ»¾ßÓÐÊôÐÔ length£¬ÓÃÓÚ´æ·Å×Ö·û´®µÄ´óС¡£
×ܶøÑÔÖ®£¬3 ÖÖÖ÷ÒªµÄÔʼÀàÐÍ Boolean Öµ¡¢Êý×ÖºÍ×Ö·û´®¶¼ÓÐ toString() ·½·¨£¬¿ÉÒÔ°ÑËüÃǵÄֵת»»³É×Ö·û´®¡£
Ìáʾ£ºÄúÒ²Ðí»áÎÊ£¬¡°×Ö·û´®»¹ÓÐ toString() ·½·¨Âð£¬Õâ²»ÊǶàÓàÂ𣿡±Êǵ쬵ÄÈ·Èç´Ë£¬²»¹ý ECMAScript ¶¨ÒåËùÓжÔÏó¶¼ÓÐ toString() ·½·¨£¬ÎÞÂÛËüÊÇα¶ÔÏ󣬻¹ÊÇÕæ¶ÔÏó¡£ÒòΪ String ÀàÐÍÊôÓÚα¶ÔÏó£¬ËùÒÔËüÒ»¶¨ÓÐ toString() ·½·¨¡£
Boolean ÀàÐ굀 toString() ·½·¨Ö»ÊÇÊä³ö "true" »ò "false"£¬½á¹ûÓɱäÁ¿µÄÖµ¾ö¶¨£º
var bFound = false;
alert(bFound.toString()); //Êä³ö "false"
Number ÀàÐ굀 toString() ·½·¨±È½ÏÌØÊ⣬ËüÓÐÁ½ÖÖģʽ£¬¼´Ä¬ÈÏģʽºÍ»ùģʽ¡£²ÉÓÃĬÈÏģʽ£¬toString() ·½·¨Ö»ÊÇÓÃÏàÓ¦µÄ×Ö·û´®Êä³öÊý×ÖÖµ£¨ÎÞÂÛÊÇÕûÊý¡¢¸¡µãÊý»¹ÊÇ¿ÆÑ§¼ÆÊý·¨£©£¬ÈçÏÂËùʾ£º
var iNum1 = 10; var iNum2 = 10.0; alert(iNum1.toString()); //Êä³ö "10" alert(iNum2.toString()); //Êä³ö "10"
×¢ÊÍ£ºÔÚĬÈÏģʽÖУ¬ÎÞÂÛ×î³õ²ÉÓÃʲô±íʾ·¨ÉùÃ÷Êý×Ö£¬Number ÀàÐ굀 toString() ·½·¨·µ»ØµÄ¶¼ÊÇÊý×ÖµÄÊ®½øÖƱíʾ¡£Òò´Ë£¬Ò԰˽øÖÆ»òÊ®Áù½øÖÆ×ÖÃæÁ¿ÐÎʽÉùÃ÷µÄÊý×ÖÊä³öµÄ¶¼ÊÇÊ®½øÖÆÐÎʽµÄ¡£
²ÉÓà Number ÀàÐ굀 toString() ·½·¨µÄ»ùģʽ£¬¿ÉÒÔÓò»Í¬µÄ»ùÊä³öÊý×Ö£¬ÀýÈç¶þ½øÖƵĻùÊÇ 2£¬°Ë½øÖƵĻùÊÇ 8£¬Ê®Áù½øÖƵĻùÊÇ 16¡£
»ùÖ»ÊÇҪת»»³ÉµÄ»ùÊýµÄÁíÒ»ÖÖ¼Ó·¨¶øÒÑ£¬ËüÊÇ toString() ·½·¨µÄ²ÎÊý£º
var iNum = 10; alert(iNum.toString(2)); //Êä³ö "1010" alert(iNum.toString(8)); //Êä³ö "12" alert(iNum.toString(16)); //Êä³ö "A"
ÔÚÇ°ÃæµÄʾÀýÖУ¬ÒÔ 3 ÖÖ²»Í¬µÄÐÎʽÊä³öÁËÊý×Ö 10£¬¼´¶þ½øÖÆÐÎʽ¡¢°Ë½øÖÆÐÎʽºÍÊ®Áù½øÖÆÐÎʽ¡£HTML ²ÉÓÃÊ®Áù½øÖƱíʾÿÖÖÑÕÉ«£¬ÔÚ HTML Öд¦ÀíÊý×ÖʱÕâÖÖ¹¦Äܷdz£ÓÐÓá£
×¢ÊÍ£º¶ÔÊý×Öµ÷Óà toString(10) Óëµ÷Óà toString() Ïàͬ£¬ËüÃÇ·µ»ØµÄ¶¼ÊǸÃÊý×ÖµÄÊ®½øÖÆÐÎʽ¡£
²ÎÔÄ£º
Çë²ÎÔÄ JavaScript ²Î¿¼ÊÖ²áÌṩµÄÓÐ¹Ø toString() ·½·¨µÄÏêϸÐÅÏ¢£º
ת»»³ÉÊý×Ö
ECMAScript ÌṩÁËÁ½ÖÖ°Ñ·ÇÊý×ÖµÄÔʼֵת»»³ÉÊý×ֵķ½·¨£¬¼´ parseInt() ºÍ parseFloat()¡£
ÕýÈçÄú¿ÉÄÜÏëµ½µÄ£¬Ç°Õß°Ñֵת»»³ÉÕûÊý£¬ºóÕß°Ñֵת»»³É¸¡µãÊý¡£Ö»ÓÐ¶Ô String ÀàÐ͵÷ÓÃÕâЩ·½·¨£¬ËüÃDzÅÄÜÕýÈ·ÔËÐУ»¶ÔÆäËûÀàÐÍ·µ»ØµÄ¶¼ÊÇ NaN¡£
parseInt()
ÔÚÅжÏ×Ö·û´®ÊÇ·ñÊÇÊý×Öֵǰ£¬parseInt() ºÍ parseFloat() ¶¼»á×Ðϸ·ÖÎö¸Ã×Ö·û´®¡£
parseInt() ·½·¨Ê×ÏȲ鿴λÖà 0 ´¦µÄ×Ö·û£¬ÅжÏËüÊÇ·ñÊǸöÓÐЧÊý×Ö£»Èç¹û²»ÊÇ£¬¸Ã·½·¨½«·µ»Ø NaN£¬²»ÔÙ¼ÌÐøÖ´ÐÐÆäËû²Ù×÷¡£µ«Èç¹û¸Ã×Ö·ûÊÇÓÐЧÊý×Ö£¬¸Ã·½·¨½«²é¿´Î»Öà 1 ´¦µÄ×Ö·û£¬½øÐÐͬÑùµÄ²âÊÔ¡£ÕâÒ»¹ý³Ì½«³ÖÐøµ½·¢ÏÖ·ÇÓÐЧÊý×ÖµÄ×Ö·ûΪֹ£¬´Ëʱ parseInt() ½«°Ñ¸Ã×Ö·û֮ǰµÄ×Ö·û´®×ª»»³ÉÊý×Ö¡£
ÀýÈ磬Èç¹ûÒª°Ñ×Ö·û´® "12345red" ת»»³ÉÕûÊý£¬ÄÇô parseInt() ½«·µ»Ø 12345£¬ÒòΪµ±Ëü¼ì²éµ½×Ö·û r ʱ£¬¾Í»áÍ£Ö¹¼ì²â¹ý³Ì¡£
×Ö·û´®Öаüº¬µÄÊý×Ö×ÖÃæÁ¿»á±»Õýȷת»»ÎªÊý×Ö£¬±ÈÈç "0xA" »á±»Õýȷת»»ÎªÊý×Ö 10¡£²»¹ý£¬×Ö·û´® "22.5" ½«±»×ª»»³É 22£¬ÒòΪ¶ÔÓÚÕûÊýÀ´Ëµ£¬Ð¡ÊýµãÊÇÎÞЧ×Ö·û¡£
һЩʾÀýÈçÏ£º
var iNum1 = parseInt("12345red"); //·µ»Ø 12345 var iNum1 = parseInt("0xA"); //·µ»Ø 10 var iNum1 = parseInt("56.9"); //·µ»Ø 56 var iNum1 = parseInt("red"); //·µ»Ø NaN
parseInt() ·½·¨»¹Óлùģʽ£¬¿ÉÒ԰Ѷþ½øÖÆ¡¢°Ë½øÖÆ¡¢Ê®Áù½øÖÆ»òÆäËûÈκνøÖƵÄ×Ö·û´®×ª»»³ÉÕûÊý¡£»ùÊÇÓÉ parseInt() ·½·¨µÄµÚ¶þ¸ö²ÎÊýÖ¸¶¨µÄ£¬ËùÒÔÒª½âÎöÊ®Áù½øÖƵÄÖµ£¬ÐèÈçϵ÷Óà parseInt() ·½·¨£º
var iNum1 = parseInt("AF", 16); //·µ»Ø 175
µ±È»£¬¶Ô¶þ½øÖÆ¡¢°Ë½øÖÆÉõÖÁÊ®½øÖÆ£¨Ä¬ÈÏģʽ£©£¬¶¼¿ÉÒÔÕâÑùµ÷Óà parseInt() ·½·¨£º
var iNum1 = parseInt("10", 2); //·µ»Ø 2 var iNum2 = parseInt("10", 8); //·µ»Ø 8 var iNum3 = parseInt("10", 10); //·µ»Ø 10
Èç¹ûÊ®½øÖÆÊý°üº¬Ç°µ¼ 0£¬ÄÇô×îºÃ²ÉÓûùÊý 10£¬ÕâÑù²Å²»»áÒâÍâµØµÃµ½°Ë½øÖƵÄÖµ¡£ÀýÈ磺
var iNum1 = parseInt("010"); //·µ»Ø 8 var iNum2 = parseInt("010", 8); //·µ»Ø 8 var iNum3 = parseInt("010", 10); //·µ»Ø 10
ÔÚÕâ¶Î´úÂëÖУ¬Á½ÐдúÂë¶¼°Ñ×Ö·û "010" ½âÎö³ÉÒ»¸öÊý×Ö¡£µÚÒ»ÐдúÂë°ÑÕâ¸ö×Ö·û´®¿´×÷°Ë½øÖƵÄÖµ£¬½âÎöËüµÄ·½Ê½ÓëµÚ¶þÐдúÂ루ÉùÃ÷»ùÊýΪ 8£©Ïàͬ¡£×îºóÒ»ÐдúÂëÉùÃ÷»ùÊýΪ 10£¬ËùÒÔ iNum3 ×îºóµÈÓÚ 10¡£
²ÎÔÄ
Çë²ÎÔÄ JavaScript ²Î¿¼ÊÖ²áÌṩµÄÓÐ¹Ø parseInt() ·½·¨µÄÏêϸÐÅÏ¢£ºparseInt()¡£
parseFloat()
parseFloat() ·½·¨Óë parseInt() ·½·¨µÄ´¦Àí·½Ê½ÏàËÆ£¬´ÓλÖà 0 ¿ªÊ¼²é¿´Ã¿¸ö×Ö·û£¬Ö±µ½ÕÒµ½µÚÒ»¸ö·ÇÓÐЧµÄ×Ö·ûΪֹ£¬È»ºó°Ñ¸Ã×Ö·û֮ǰµÄ×Ö·û´®×ª»»³ÉÕûÊý¡£
²»¹ý£¬¶ÔÓÚÕâ¸ö·½·¨À´Ëµ£¬µÚÒ»¸ö³öÏÖµÄСÊýµãÊÇÓÐЧ×Ö·û¡£Èç¹ûÓÐÁ½¸öСÊýµã£¬µÚ¶þ¸öСÊýµã½«±»¿´×÷ÎÞЧµÄ¡£parseFloat() »á°ÑÕâ¸öСÊýµã֮ǰµÄ×Ö·ûת»»³ÉÊý×Ö¡£ÕâÒâζ×Å×Ö·û´® "11.22.33" ½«±»½âÎö³É 11.22¡£
ʹÓà parseFloat() ·½·¨µÄÁíÒ»²»Í¬Ö®´¦ÔÚÓÚ£¬×Ö·û´®±ØÐëÒÔÊ®½øÖÆÐÎʽ±íʾ¸¡µãÊý£¬¶ø²»ÊÇÓð˽øÖÆ»òÊ®Áù½øÖÆ¡£¸Ã·½·¨»áºöÂÔǰµ¼ 0£¬ËùÒ԰˽øÖÆÊý 0102 ½«±»½âÎöΪ 102¡£¶ÔÓÚÊ®Áù½øÖÆÊý 0xA£¬¸Ã·½·¨½«·µ»Ø NaN£¬ÒòΪÔÚ¸¡µãÊýÖУ¬x ²»ÊÇÓÐЧ×Ö·û¡££¨×¢ÊÍ£º¾²âÊÔ£¬¾ßÌåµÄä¯ÀÀÆ÷ʵÏֻ᷵»Ø 0£¬¶ø²»ÊÇ NaN¡££©
´ËÍ⣬parseFloat() ·½·¨Ò²Ã»Óлùģʽ¡£
ÏÂÃæÊÇʹÓà parseFloat() ·½·¨µÄһЩʾÀý£º
var fNum1 = parseFloat("12345red"); //·µ»Ø 12345 var fNum2 = parseFloat("0xA"); //·µ»Ø NaN var fNum3 = parseFloat("11.2"); //·µ»Ø 11.2 var fNum4 = parseFloat("11.22.33"); //·µ»Ø 11.22 var fNum5 = parseFloat("0102"); //·µ»Ø 102 var fNum1 = parseFloat("red"); //·µ»Ø NaN
²ÎÔÄ
Çë²ÎÔÄ JavaScript ²Î¿¼ÊÖ²áÌṩµÄÓÐ¹Ø parseFloat() ·½·¨µÄÏêϸÐÅÏ¢£ºparseFloat()¡£
Ç¿ÖÆÀàÐÍת»»
Äú»¹¿ÉÒÔʹÓÃÇ¿ÖÆÀàÐÍת»»£¨type casting£©À´´¦Àíת»»ÖµµÄÀàÐÍ¡£Ê¹ÓÃÇ¿ÖÆÀàÐÍת»»¿ÉÒÔ·ÃÎÊÌØ¶¨µÄÖµ£¬¼´Ê¹ËüÊÇÁíÒ»ÖÖÀàÐ͵ġ£
±àÕß×¢£ºcast ÓС°ÖýÔ족֮Ò⣬ºÜÌùºÏ¡°Ç¿ÖÆ×ª»»¡±µÄÒâ˼¡£
ECMAScript ÖпÉÓÃµÄ 3 ÖÖÇ¿ÖÆÀàÐÍת»»ÈçÏ£º
- Boolean(value) - °Ñ¸ø¶¨µÄֵת»»³É Boolean ÐÍ£»
- Number(value) - °Ñ¸ø¶¨µÄֵת»»³ÉÊý×Ö£¨¿ÉÒÔÊÇÕûÊý»ò¸¡µãÊý£©£»
- String(value) - °Ñ¸ø¶¨µÄֵת»»³É×Ö·û´®£»
ÓÃÕâÈý¸öº¯Êý֮һת»»Öµ£¬½«´´½¨Ò»¸öÐÂÖµ£¬´æ·ÅÓÉÔʼֱֵ½Óת»»³ÉµÄÖµ¡£Õâ»áÔì³ÉÒâÏë²»µ½µÄºó¹û¡£
Boolean() º¯Êý
µ±Òª×ª»»µÄÖµÊÇÖÁÉÙÓÐÒ»¸ö×Ö·ûµÄ×Ö·û´®¡¢·Ç 0 Êý×Ö»ò¶ÔÏóʱ£¬Boolean() º¯Êý½«·µ»Ø true¡£Èç¹û¸ÃÖµÊÇ¿Õ×Ö·û´®¡¢Êý×Ö 0¡¢undefined »ò null£¬Ëü½«·µ»Ø false¡£
¿ÉÒÔÓÃÏÂÃæµÄ´úÂë²âÊÔ Boolean Ð͵ÄÇ¿ÖÆÀàÐÍת»»£º
var b1 = Boolean(""); //false - ¿Õ×Ö·û´® var b2 = Boolean("hello"); //true - ·Ç¿Õ×Ö·û´® var b1 = Boolean(50); //true - ·ÇÁãÊý×Ö var b1 = Boolean(null); //false - null var b1 = Boolean(0); //false - Áã var b1 = Boolean(new object()); //true - ¶ÔÏó
Number() º¯Êý
Number() º¯ÊýµÄÇ¿ÖÆÀàÐÍת»»Óë parseInt() ºÍ parseFloat() ·½·¨µÄ´¦Àí·½Ê½ÏàËÆ£¬Ö»ÊÇËüת»»µÄÊÇÕû¸öÖµ£¬¶ø²»ÊDz¿·ÖÖµ¡£
»¹¼ÇµÃÂð£¬parseInt() ºÍ parseFloat() ·½·¨Ö»×ª»»µÚÒ»¸öÎÞЧ×Ö·û֮ǰµÄ×Ö·û´®£¬Òò´Ë "1.2.3" ½«·Ö±ð±»×ª»»Îª "1" ºÍ "1.2"¡£
Óà Number() ½øÐÐÇ¿ÖÆÀàÐÍת»»£¬"1.2.3" ½«·µ»Ø NaN£¬ÒòΪÕû¸ö×Ö·û´®Öµ²»ÄÜת»»³ÉÊý×Ö¡£Èç¹û×Ö·û´®ÖµÄܱ»ÍêÕûµØ×ª»»£¬Number() ½«ÅжÏÊǵ÷Óà parseInt() ·½·¨»¹ÊÇ parseFloat() ·½·¨¡£
ϱí˵Ã÷Á˶Բ»Í¬µÄÖµµ÷Óà Number() ·½·¨»á·¢ÉúµÄÇé¿ö£º
Ó÷¨ | ½á¹û |
---|---|
Number(false) | 0 |
Number(true) | 1 |
Number(undefined) | NaN |
Number(null) | 0 |
Number("1.2") | 1.2 |
Number("12") | 12 |
Number("1.2.3") | NaN |
Number(new object()) | NaN |
Number(50) | 50 |
String() º¯Êý
×îºóÒ»ÖÖÇ¿ÖÆÀàÐÍת»»·½·¨ String() ÊÇ×î¼òµ¥µÄ£¬ÒòΪËü¿É°ÑÈκÎֵת»»³É×Ö·û´®¡£
ÒªÖ´ÐÐÕâÖÖÇ¿ÖÆÀàÐÍת»»£¬Ö»ÐèÒªµ÷ÓÃ×÷Ϊ²ÎÊý´«µÝ½øÀ´µÄÖµµÄ toString() ·½·¨£¬¼´°Ñ 12 ת»»³É "12"£¬°Ñ true ת»»³É "true"£¬°Ñ false ת»»³É "false"£¬ÒÔ´ËÀàÍÆ¡£
Ç¿ÖÆ×ª»»³É×Ö·û´®ºÍµ÷Óà toString() ·½·¨µÄΨһ²»Í¬Ö®´¦ÔÚÓÚ£¬¶Ô null ºÍ undefined ÖµÇ¿ÖÆÀàÐÍת»»¿ÉÒÔÉú³É×Ö·û´®¶ø²»Òý·¢´íÎó£º
var s1 = String(null); //"null" var oNull = null; var s2 = oNull.toString(); //»áÒý·¢´íÎó
ÔÚ´¦Àí ECMAScript ÕâÑùµÄÈõÀàÐÍÓïÑÔʱ£¬Ç¿ÖÆÀàÐÍת»»·Ç³£ÓÐÓ㬲»¹ýÓ¦¸ÃÈ·±£Ê¹ÓÃÖµµÄÕýÈ·¡£