大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

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

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

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

最近小編看到不少同學在求助這想要找一套比較專業的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官網。

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

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 精品欧美高清一区二区免费 | 久久久高清免费视频 | 丁香激情综合色伊人久久 | 久久99热久久国产精品 | 久久久久毛片免费观看 | 97色老99久久九九爱精品 | 亚洲韩国日本一级二级r级 亚洲韩精品欧美一区二区三区 | 欧美色婷婷 | 欧美综合精品一区二区三区 | 日本不卡视频在线观看 | 日韩欧美第一区二区三区 | 久久久久久综合对白国产 | 国产一区二区精品久久91 | 性丰满妇女free性性性 | 宅男看片午夜大片啪啪mv | 国产二区在线播放 | chinese在线播放91国内 | 99色综合| 国产一区二区网站 | 亚洲国产一区二区三区 | 亚洲视屏在线 | 免费一级毛片在级播放 | 成人观看网站a | 911视频免费版 | 欧美激情久久久久久久久 | 国产视频一二 | 毛片大全高清免费 | 免费综合网| 视频在线一区二区 | 免费的毛片网站 | 久久国产精品一国产精品金尊 | 伊人热人久久中文字幕 | 亚洲专区在线视频 | 国产精品国内免费一区二区三区 | 香蕉视频国产精品 | 99香蕉国产| 国产一级特黄老妇女大片免费 | 狠狠色噜噜狠狠狠狠98 | 国产小网站 | 综合亚洲一区二区三区 | 国产成人精品日本亚洲麻豆 |