盤點JavaScript中那些進階操作知識(上篇)
前言
相信做網(wǎng)站對JavaScript再熟悉不過了,它是一門腳本語言,不同于Python的是,它是一門瀏覽器腳本語言,而Python則是服務器腳本語言,我們不光要會Python,還要會JavaScript,因為它對做網(wǎng)頁方面是有很大作用的。
1.進階操作
這里列舉了一些小編以前經(jīng)常用到的一些例子以及一些經(jīng)驗,由于篇幅受限,這里我將會把部分執(zhí)行結(jié)果的輸出直接輸入到代碼下面。
1).瀏覽器輸入
- prompt('請輸入') 返回一個字符串變量
2).瀏覽器輸出
- document.write('我被輸出了') 返回一個字符串
3).瀏覽器彈框
- alert('我是彈框') 返回一個字符串
4).瀏覽器交互
- confirm("是否進入"); 返回一個比爾類型的值
5).控制臺打印結(jié)果
- console.log('顯示在控制臺的結(jié)果')
6).類型檢查
- typeof ss
- ss instanceof string
7).轉(zhuǎn)換為字符串
- var ff=123
- ff.toString()
8).轉(zhuǎn)換為數(shù)字
- parseInt(‘231fasd’) -->231 isNumeric 用來判斷是否是數(shù)字
- parseInt('df',num) --> num介于2~36之間,若省略則為10,若‘0x’開頭,則為16,若小于2或大于36則為NAN
- parseFloat('10') -->無法轉(zhuǎn)換為數(shù)字將返回NaN,可通過isNan來判斷是否為NaN
9).轉(zhuǎn)換為原始對象
- var ff=123
- ff.ValueOf()
10).編解碼函數(shù)
1))字符串編解碼
- escape(string) # 編碼
- unescape(string) #解碼
2))URL編解碼
- encodeURI(URIstring) #編碼
- decodeURI(URIstring) #解碼
- encodeURIComponent(URIstring) #把字符串編碼為 URI 組件
- decodeURIComponent(URIstring) #解碼一個編碼的 URI 組件
11).Eval
可把里面的字符串當做Js代碼來執(zhí)行,猶如Python中的Eval。
- eval("alert('fasd')")
12).Call
能夠使用屬于另一個對象的方法,可傳多個參數(shù),是經(jīng)典的對象冒充方法。
- function ss(a,b) {
- alert(a + this.val + b);
- };
- var o= new Object();
- o.val = "123";
- ss.call(o, "I am", "years old.");
- output:
- I am 123 years old
13).Apply
與Call差不多,前面是對象但是它后面的參數(shù)是一個數(shù)組。
- function ss(a,b) {
- alert(a + this.val + b);
- };
- var o= new Object();
- o.val = "123";
- ss.apply(o, new Array("I am", "years old"));
14).Caller
返回一個對函數(shù)的引用,該函數(shù)調(diào)用了當前函數(shù),caller 屬性只有在函數(shù)執(zhí)行時才有定義。
- function aa() {
- if (aa.caller) {
- console.log(aa.caller);
- } else {
- console.log("111");
- }
- }
- aa()
- output: 111
15).Callee
返回正被執(zhí)行的 Function 對象,表示對函數(shù)對象本身的引用,一般用在遞歸。
- function ff(x){
- if(x==1)
- {
- return 1;
- }
- else{
- return x+arguments.callee(x-1)
- }
- }
- ff(3);
- output:6
總結(jié)
這篇文章主要介紹了JavaScript的進階操作知識。下一篇文章,我們繼續(xù)介紹JavaScript,敬請期待!