黄色网址大全免费-黄色网址你懂得-黄色网址你懂的-黄色网址有那些-免费超爽视频-免费大片黄国产在线观看

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學習攻略 職業指南 高頻出現的一些Js面試題及答案

高頻出現的一些Js面試題及答案

更新時間:2023-01-29 11:27:03 來源:動力節點 瀏覽1221次

最近小編看到不少同學在求助這想要找一套比較專業的Js面試題,今天小編主要針對這一點從各大論壇以及從老師那里套取出的一些大廠高頻出現的相關Js面試題,做出了以下整理,分享給大家,希望能夠為大家來一次全方位的查漏補缺。

js面試題及答案

1. JS延遲加載的方式有哪些?

一般有六種方式;defer屬性、async屬性、動態創建dom方式、使用jquery的getScript方法、使用setTimeout延遲方法、讓js最后加載。

defer屬性:延遲腳本。立即下載,但延遲執行(延遲到整個頁面都解析完畢后再運行),按照腳本出現的先后順序執行。

async屬性:異步腳本。下載完立即執行,但不保證按照腳本出現的先后順序執行;

動態創建dom方式

使用jquery的getScript方法:getScript() 方法通過 HTTP GET 請求載入并執行 JavaScript 文件。

語法:jQuery.getScript(url,success(response,status))

使用setTimeout延遲方法

讓js最后加載 將腳本元素放在文檔體的底端(標簽前面),這樣腳本就可以在HTML解析完畢后加載了。但此方案的問題是,只有在所有HTML DOM加載完成后才開始腳本的加載/解析過程。對于有大量js代碼的大型網站,可能會帶來顯著的性能損耗。

2.同步和異步的區別?

同步的概念在操作系統中:不同進程協同完成某項工作而先后次序調整(通過阻塞、喚醒等方式),同步強調的是順序性,誰先誰后。異步不存在順序性。

同步:瀏覽器訪問服務器,用戶看到頁面刷新,重新發請求,等請求完,頁面刷新,新內容出現,用戶看到新內容之后進行下一步操作。

異步:瀏覽器訪問服務器請求,用戶正常操作,瀏覽器在后端進行請求。等請求完,頁面不刷新,新內容也會出現,用戶看到新內容。

3.call和applyd的區別?

call()方法和apply()方法的作用相同,動態改變某個類的某個方法的運行環境。他們的區別在于接收參數的方式不同。

區別:

在使用call()方法時,傳遞給函數的參數必須逐個列舉出來

使用apply()時,傳遞給函數的是參數數組。

4.documen.write和 innerHTML的區別?

document.write()只能重繪整個頁面

setTimeout(function(){
       document.write('<p>5 secs later</p>');
}, 5000);

或者

window.onload = function() { document.write("HI");

innerHTML可以重繪頁面的一部分

5.數組對象有哪些原生方法,列舉一下?

pop、push、shift、unshift、splice、reverse、sort、concat、join、slice、toString、indexOf、lastIndexOf、reduce、reduceRight、forEach、map、filter、every、some

6.Javascript實現繼承的幾種方式?

Javascript實現繼承有三種方式:

方式一:構造函數法(又叫經典繼承)

function SuperType(name) {
    this.name = name;
    this.sayName = function() {
        window.alert(this.name);
    };
}
function SubType(name, age) {
    SuperType.call(this, name); //在這里借用了父類的構造函數
    this.age = age;
}

方式二:對象冒充

function SuperType(name) {
    this.name = name;
    this.sayName = function() {
        window.alert(this.name);
    }
}   
function SubType(name, age) {
    this.supertype = SuperType; //在這里使用了對象冒充
    this.supertype(name);
    this.age = age;
}

方式三:組合繼承(最常用)

function SuperType(name) {
    this.name = name
}    
SuperType.prototype = {
    sayName : function() {
        window.alert(this.name);
    }
};     
function SubType(name, age) {
    SuperType.call(this, name); //在這里繼承屬性
    this.age = age;
}
SubType.prototype = new SuperType(); //在原型上繼承方法

7、什么是閉包(closure),說說優缺點?

閉包:指的是一個函數可以訪問另一個函數作用域中變量。常見的構造方法,是在一個函數內部定義另外一個函數。內部函數可以引用外層的變量;外層變量不會被垃圾回收機制回收。

注意,閉包的原理是作用域鏈,所以閉包訪問的上級作用域中的變量是個對象,其值為其運算結束后的最后一個值。

優缺點:

優點:避免全局變量污染。

缺點:容易造成內存泄漏。

8、new操作符具體干了什么呢?

創建一個空對象,并且 this 變量引用該對象,同時還繼承了該函數的原型。

屬性和方法被加入到 this 引用的對象中。

新創建的對象由 this 所引用,并且最后隱式的返回 this 。

以上就是“高頻出現的一些Js面試題及答案”,你能回答上來嗎?如果想要了解更多的Java面試題相關內容,可以關注動力節點Java官網。

提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 男人和女人日皮视频 | 男人和女人日皮的视频 | 国产欧美亚洲精品第一页久久肉 | 特级黄色视频毛片 | 亚洲第一网站免费视频 | 性感美女香蕉视频 | 19国产精品麻豆免费观看 | 91视频一88av | 国产亚洲欧美一区二区 | 新神榜哪吒重生免费高清观看 | 午夜操一操 | 成人久久18免费软件 | 小明免费视频一区二区 | 网站在线观看你懂的 | 欧美成人免费观看久久 | 国产香蕉国产精品偷在线观看 | 精品国产免费人成网站 | 一级毛片特级毛片黄毛片 | 日韩在线视频免费播放 | 天天摸夜夜添夜夜添国产 | 久青草视频免费视频播放线路1 | 美女激情影院午夜网 | 最近更新中文字幕2019视频 | 日本不卡视频一区二区 | 男人和女人日批视频 | 91久久天天躁狠狠躁夜夜 | 午夜亚洲视频 | 最新亚洲一区二区三区四区 | 日韩欧美视频免费观看 | 91精品国产综合久久青草 | 青草视频在线观看视频 | 国产成人精品怡红院 | 亚洲欧美丝袜综合精品第一页 | 国产在线一卡二卡 | 成人久久18免费软件 | 免费的黄色影片 | 韩国伦理片在线看免 | 亚洲色图第四页 | 午夜爽爽爽视频 | 免费在线看黄 | 日本中文字幕在线视频 |