亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 網站 > WEB開發 > 正文

JavaScript內置對象--單體內置對象(Global、Math)詳解

2024-04-27 15:06:40
字體:
來源:轉載
供稿:網友

一、什么是單體內置對象?

官方對于"單體"二字其實沒有顯性的表達,看了很多書籍和大牛的網站,都是含糊兩口,其實就我自己也沒完全搞清楚這個幾個名詞,“引用類型”,“單體”內置對象,"內置對象"這些詞的區別,按介紹說,內置對象是不依賴于宿主環境的對象,這些對象在程序執行之前就已經存在了,開發人員不必顯示地實例化內置對象,因為它們已經實例化了。簡而言之,單體內置對象是不需要通過new來實例化的,例如我們的string可以new,但是Math是不要new的,因為可以直接使用Math的API。

Global類

Global對象是javaScript中最特別的一個對象。不屬于任何其他對象的屬性和方法,最終都是它的屬性和方法。實際上,沒有全局變量或全局作用域,所有在全局作用域中定義的屬性和函數,都是Global對象的屬性。一、URI編碼方法1.encodeURI()/encodeURIComponent() : 這兩個方法用于對URI進行編碼,有效的URI中不能包含某些字符,例如空格。他們用特殊的UTF-8編碼替換所有無效的字符,從而讓瀏覽器能夠接受和理解。encodeURI(): 這個方法用于整個URI(例如,http://www.wrox.com/illegal  value.html)進行編碼encodeURIComponent() : 這個方法只對URI中的每一段(例如: illegal  value.html)進行編碼這兩個方法的區別是:encodeURI()不會對本身屬于URI的特殊字符進行編碼,例如冒號、正斜杠、問號、井字號encodeURIComponent()則會對它發現的任何非標準字符進行編碼var uri = "http://www.wrox.com/illegal value.html#start";//"http://www.wrox.com/illegal%20value.html#start"   空格變成了%20console.log(encodeURI(uri));   //"http%3A%2F%2Fwww.wrox.com%2illegal%20value.html%23start"  冒號、正斜杠、問號、井字號都被轉碼console.log(encodeURIComponent(uri));  2.decodeURI()與decodeURIComponent() : 這兩個方法是與encodeURI()/encodeURIComponent()對應的兩個方法,是對這兩個方法進行解碼,decodeURI()只能對encodeURI()解碼,decodeURIComponent()只能對encodeURIComponent()解碼二、eval()方法eval()方法支接收一個參數,即要執行的Javascript字符串,舉個例子:eval(alert("hello"));這段代碼的執行結果等同于alert("hello")當解析器調用eval()方法時,會將傳入的參數作為實際的JavaScript語句解析,然后將執行結果插入原來的位置。通過eval()執行的代碼被認為是包含該次調用的執行環境的一部分,因此被執行的代碼具有與該執行環境相同的作用域鏈。這意味著通過eval()執行的代碼可以引用在包含環境中定義的變量,舉個例子:var msg="hello world";eval("alert(msg)");   //"hello world"可見,變量msg是在eval()調用的環境之外定義的,但其中調用的alert()仍然能夠顯示"hello world"同樣地,可以在eval()中定義一個函數,然后再在該調用的外部引用這個函數:eval("function sayHi(){ alert ("h1")}");  sayHi();函數sayHi()是在eval()內部定義的,但由于對eval()的調用最終會被替換成定義函數的實際代碼。注意:在eval()中創建的任何變量或函數都不會被提升,在解析代碼時,它們被包含在一個字符串中;只有在eval()執行時才創建。三、window對象JavaScript沒有指出如何直接訪問Global對象,但是web瀏覽器都是將它作為window對象的一部分加以實現的。因此,在全局作用域中聲明的所有變量和函數,都稱為window對象的屬性。var color="red";function sayColor(){alert(window.color);}window.sayColor(); //"red"上面定義了一個全局變量color和全局函數sayColor()方法,在函數內部通過window.color來訪問color變量,說明全局變量color是window對象的屬性。然后通過window.sayColor()來調用sayColor()方法,說明sayColor()是window對象的方法。另一種取得Global對象的方法是使用以下代碼:var global = function(){return this;}();this的值等于Global對象

Math類

Math對象是專門封裝數學計算的常量和API的對象,不能new,直接使用??!一、Math對象的屬性最常使用到的無非就是Math.PI了二、min()和max()方法min()和max()方法用于確定一組數值中的最小值和最大值。var max=Math.max(3,54,32,16);console.log(max);    //54var min=Math.min(3,54,32,16);console.log(min);   //3三、舍入方法Math.ceil() : 執行向上舍入,它總將數值向上舍入為最接近的整數Math.floor() : 執行向下舍入,它總將數值向下舍入為最接近的整數Math.round() : 執行四舍五入,它總將數值四舍五入為最接近的整數console.log(Math.ceil(25.9)); //26console.log(Math.ceil(25.5)); //26console.log(Math.ceil(25.1)); //26 console.log(Math.floor(25.9));   //25console.log(Math.floor(25.5));   //25console.log(Math.floor(25.1));  //25console.log(Math.round(25.9));   //26console.log(Math.round(25.5));   //26console.log(Math.round(25.1));  //25舍入的比較:1.Math.ceil()/Math.floor()    VS    str.parseInt()前者的參數是number,且必須用Math調用,而且不能去掉以字符串結尾的非數字字符后者的參數是string,是專門用來去掉字符結尾的非數字字符那問題來了,如果遇到"25.67abc" 我們該怎么轉換為整數數字?首選使用parseFloatvar text = parseFloat("25.67abc");console.log(text);   //262.Math.round()     VS   toFixed()前者必須用Math調用,且只能取整數,返回值是一個number,可以直接算數計算后者可以被任何數字類型的值調用,返回值是一個string,要先轉換為number在來計算四、 Math.random()方法Math.random() : 返回值是一個大于等于0小于1的一個隨機數,這個方法經常在開發中使用,專門用來隨機生產一個數字的方法公式: 值 = Math.floor(Math.random()*可能值的總數+第一個可能的值)使用Math.floor的原因是因為Math.random() 總返回一個小數值舉個例子,如果你想選取1~10之間的數值,可以這樣寫:var num = Math.floor(Math.random()*10+1);總共有10個可能的值,而第一個可能是1。如果想要一個介于2~10之間的數值,可以這樣寫:var  num =Math.floor(Math.random()*9+2);總共有9個可能的值,而第一個可能是2。五、其他方法Math對象中還包含了一些與完成各種簡單或復雜計算有關的方法:三角函數相關的方法:
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美性xxxx| 成人亚洲欧美一区二区三区| 精品高清美女精品国产区| 亚洲一区二区三区毛片| 97香蕉超级碰碰久久免费软件| 国产成人精品一区二区| 亚洲全黄一级网站| 日韩欧美aaa| 国产一区二区美女视频| 欧美激情乱人伦一区| 国产一区二区三区欧美| 亚洲综合中文字幕在线观看| 亚洲国产精品悠悠久久琪琪| 国产欧美日韩免费| 欧美激情成人在线视频| 国产成人一区二区三区电影| 亚洲毛片在线观看.| 亚洲电影成人av99爱色| 日韩中文字幕网| 久久精品青青大伊人av| 日韩在线免费av| 日韩中文av在线| 久久中文字幕视频| 成人免费淫片视频软件| 欧美成人免费全部观看天天性色| 欧美成人精品一区二区| 国产精品9999| 国产精品久久网| 欧美日韩精品在线播放| 伊人精品在线观看| 搡老女人一区二区三区视频tv| 97超级碰在线看视频免费在线看| 午夜精品福利视频| 高清欧美性猛交xxxx黑人猛交| 亚洲一区二区三区成人在线视频精品| 亚洲图片在区色| 亚洲高清久久久久久| 亚洲wwwav| 粗暴蹂躏中文一区二区三区| 色婷婷综合成人| 在线视频一区二区| 夜夜嗨av色一区二区不卡| 人人爽久久涩噜噜噜网站| 欧美成人一区在线| 欧美国产欧美亚洲国产日韩mv天天看完整| 成人在线播放av| 中文字幕综合在线| 欧美激情网友自拍| 欧美高清激情视频| 日韩视频亚洲视频| 九九九久久国产免费| 欧洲日本亚洲国产区| 色无极亚洲影院| 亚洲成人1234| 中文字幕一区二区精品| www国产精品视频| 日本久久久久亚洲中字幕| 国产在线98福利播放视频| 国产精品一区二区三区成人| 精品女厕一区二区三区| 91精品国产自产在线观看永久| 亚洲欧美精品在线| www日韩欧美| 97视频在线播放| 日韩精品久久久久| 秋霞午夜一区二区| 一区二区国产精品视频| 国产精品羞羞答答| 91国产一区在线| 成人xvideos免费视频| 九九热这里只有精品6| 亚洲曰本av电影| 成人a级免费视频| 国产一区二区视频在线观看| 亚洲男人av电影| 久久国产精品久久久久久| 欧美一级片免费在线| 51视频国产精品一区二区| 91精品国产高清久久久久久91| 亚洲精品成a人在线观看| 原创国产精品91| 亚洲最新av在线| 亚洲精品中文字幕有码专区| 亚洲精品网址在线观看| 日本在线精品视频| 色噜噜狠狠色综合网图区| 国产精品欧美一区二区三区奶水| 4k岛国日韩精品**专区| 欧美日韩一区二区三区| 久久免费视频在线| 国产成人精品999| 91美女高潮出水| 欧美一级片久久久久久久| 国产精品∨欧美精品v日韩精品| 欧美网站在线观看| 日韩欧美在线观看| 91精品在线观看视频| 国产91精品青草社区| 久久久极品av| 中文字幕日韩欧美| 伊人男人综合视频网| 日韩精品免费在线视频观看| 久久久伊人日本| 欧美又大又粗又长| 草民午夜欧美限制a级福利片| 日韩中文有码在线视频| 91日韩在线视频| 亚洲色图校园春色| 中文字幕日韩av电影| 欧美激情精品久久久久久大尺度| 午夜精品一区二区三区在线播放| 国产精品久在线观看| 亚洲成人网在线| 久99久在线视频| 亚洲国产日韩欧美在线图片| 国模精品视频一区二区三区| 国内成人精品一区| 欧美午夜性色大片在线观看| 91精品久久久久久久久久久| 亚洲欧美精品一区二区| 日韩精品日韩在线观看| 国产不卡在线观看| 亚洲视频在线看| 国产精品久久久久久超碰| 久久在线观看视频| 成人免费xxxxx在线观看| 亚洲美女精品成人在线视频| 欧美黑人巨大xxx极品| 神马国产精品影院av| 米奇精品一区二区三区在线观看| 国产69精品久久久久9| 黑人极品videos精品欧美裸| 亚洲影视中文字幕| 欧美性xxxxhd| 色悠悠久久久久| 国产成人精品一区二区三区| 一区二区三区 在线观看视| 亚洲天堂男人天堂| 久久视频在线直播| 精品福利在线看| 亚洲一区二区中文| 91禁外国网站| 色综合色综合久久综合频道88| 日韩在线观看高清| 国内精品久久久久久久久| 国产精品久久999| 国产美女直播视频一区| 国模视频一区二区三区| 亚洲国产精品大全| 亚洲伊人成综合成人网| 国产原创欧美精品| 国产久一一精品| 91夜夜揉人人捏人人添红杏| 亚洲国产一区二区三区在线观看| 久久好看免费视频| 欧美成人精品不卡视频在线观看| 久久精品国产亚洲| 久久久亚洲欧洲日产国码aⅴ| 精品国产鲁一鲁一区二区张丽| 久久精品人人做人人爽| 国产亚洲精品久久久久久| 欧美日韩国产激情| 国产精品麻豆va在线播放| 日韩va亚洲va欧洲va国产|