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