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

專注Java教育14年 全國(guó)咨詢/投訴熱線:400-8080-105
動(dòng)力節(jié)點(diǎn)LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁(yè) 學(xué)習(xí)攻略 職業(yè)指南 四個(gè)Javascript必問(wèn)面試題,你看看全會(huì)嗎

四個(gè)Javascript必問(wèn)面試題,你看看全會(huì)嗎

更新時(shí)間:2022-12-14 15:59:28 來(lái)源:動(dòng)力節(jié)點(diǎn) 瀏覽1108次

問(wèn)題1:JavaScript 中 undefined 和 not defined 的區(qū)別

JavaScript 未聲明變量直接使用會(huì)拋出異常:var name is not defined,如果沒(méi)有處理異常,代碼就停止運(yùn)行了。但是,使用typeof undeclared_variable并不會(huì)產(chǎn)生異常,會(huì)直接返回 undefined。

var x; // 聲明 x
console.log(x); //output: undefined

console.log(typeof y); //output: undefined

console.log(z);  // 拋出異常: ReferenceError: z is not defined

問(wèn)題2:下面的代碼輸出什么?

var y = 1;
if (function f(){}) {
    y += typeof f;
}
console.log(y);

正確的答案應(yīng)該是 1undefined。

JavaScript中if語(yǔ)句求值其實(shí)使用eval函數(shù),eval(function f(){}) 返回 function f(){} 也就是 true。

下面我們可以把代碼改造下,變成其等效代碼。

var k = 1;
if (1) {
    eval(function foo(){});
    k += typeof foo;
}
console.log(k);

上面的代碼輸出其實(shí)就是 1undefined。為什么那?我們查看下 eval() 說(shuō)明文檔即可獲得答案

該方法只接受原始字符串作為參數(shù),如果 string 參數(shù)不是原始字符串,那么該方法將不作任何改變地返回。

恰恰 function f(){} 語(yǔ)句的返回值是 undefined,所以一切都說(shuō)通了。

注意上面代碼和以下代碼不同。

var k = 1;
if (1) {
    function foo(){};
    k += typeof foo;
}
console.log(k); // output 1function

問(wèn)題3:在JavaScript中創(chuàng)建一個(gè)真正的private方法有什么缺點(diǎn)?

每一個(gè)對(duì)象都會(huì)創(chuàng)建一個(gè)private方法的方法,這樣很耗費(fèi)內(nèi)存

觀察下面代碼

var Employee = function (name, company, salary) {
    this.name = name || "";
    this.company = company || "";
    this.salary = salary || 5000;

    // Private method
    var increaseSalary = function () {
        this.salary = this.salary + 1000;
    };

    // Public method
    this.dispalyIncreasedSalary = function() {
        increaseSlary();
        console.log(this.salary);
    };
};

// Create Employee class object
var emp1 = new Employee("John","Pluto",3000);
// Create Employee class object
var emp2 = new Employee("Merry","Pluto",2000);
// Create Employee class object
var emp3 = new Employee("Ren","Pluto",2500);

在這里 emp1,emp2,emp3都有一個(gè)increaseSalary私有方法的副本。

所以我們除非必要,非常不推薦使用私有方法。

問(wèn)題4:JavaScript中什么是閉包?寫出一個(gè)例子

老生常談的問(wèn)題了,閉包是在一個(gè)函數(shù)里聲明了另外一個(gè)函數(shù),并且這個(gè)函數(shù)訪問(wèn)了父函數(shù)作用域里的變量。

下面給出一個(gè)閉包例子,它訪問(wèn)了三個(gè)域的變量

  • 它自己作用域的變量
  • 父函數(shù)作用域的變量
  • 全局作用域的變量
var globalVar = "abc";

// Parent self invoking function
(function outerFunction (outerArg) { // begin of scope outerFunction
    // Variable declared in outerFunction function scope
    var outerFuncVar = 'x';
    // Closure self-invoking function
    (function innerFunction (innerArg) { // begin of scope innerFunction
        // variable declared in innerFunction function scope
        var innerFuncVar = "y";
        console.log(
            "outerArg = " + outerArg + "\n" +
            "outerFuncVar = " + outerFuncVar + "\n" +
            "innerArg = " + innerArg + "\n" +
            "innerFuncVar = " + innerFuncVar + "\n" +
            "globalVar = " + globalVar);

    }// end of scope innerFunction)(5); // Pass 5 as parameter
}// end of scope outerFunction )(7); // Pass 7 as parameter
innerFunction is closure that is defined inside outerFunc

 輸出很簡(jiǎn)單:

outerArg = 7
outerFuncVar = x
innerArg = 5
innerFuncVar = y
globalVar = abc

以上就是“四個(gè)Javascript必問(wèn)面試題,你看看全會(huì)嗎”,你能回答上來(lái)嗎?如果想要了解更多的Java面試題相關(guān)內(nèi)容,可以關(guān)注動(dòng)力節(jié)點(diǎn)Java官網(wǎng)。

提交申請(qǐng)后,顧問(wèn)老師會(huì)電話與您溝通安排學(xué)習(xí)

  • 全國(guó)校區(qū) 2025-04-24 搶座中
  • 全國(guó)校區(qū) 2025-05-15 搶座中
  • 全國(guó)校區(qū) 2025-06-05 搶座中
  • 全國(guó)校區(qū) 2025-06-26 搶座中
免費(fèi)課程推薦 >>
技術(shù)文檔推薦 >>
主站蜘蛛池模板: 91热爆国产露脸 | a网在线 | 国产美女流白浆 | 在线影院福利 | 在线麻豆 | 午夜视频网站在线观看 | 国产一在线精品一区在线观看 | 久久青青草原精品国产麻豆 | 成年人视频在线免费 | 久久欧美精品欧美九久欧美 | 天天干天天干天天操 | 亚洲福利一区福利三区 | 欧美日韩一二三区免费视频观看 | 一级片在线观看免费 | 亚洲精品在线网站 | 91精品国产91 | 久久精品网站免费观看调教 | 欧美一级视 | 精品国产一二三区在线影院 | 亚洲精品14p | 黄色片一级毛片 | 第一福利在线观看 | 国产四虎 | 国产福利不卡视频在免费播放 | 99在线精品免费视频九九视 | 一级做a免费视频观看网站 一级做a爰片久久毛片唾 | 精品国产欧美 | 一区二区三区国产精品 | 毛茸茸成熟女性老太的女bbww | 97婷婷狠狠成人免费视频 | 亚洲日本va中文字幕 | 亚洲成人视屏 | 最刺激黄a大片免费观看下截 | 亚洲高清视频在线观看 | 中文精品99久久国产 | 青青青国产手机免费视频 | 天天摸天天爽天天澡视频 | 七七影院九色桃花78 | 福利国产 | 91模特 | 久久国产精品久久精品国产 |