精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

那些陌生又熟悉的前端面試題

開發(fā) 前端
過完年需要跳槽的小伙伴還是挺多的,又要開始刷前端面試題了!會不會有一種錯覺,看著這道面試題很熟,但是不知道該如何做?

過完年需要跳槽的小伙伴還是挺多的,又要開始刷前端面試題了!會不會有一種錯覺,看著這道面試題很熟,但是不知道該如何做?或者有答案又不知道是否正確?或者使用編輯器可以運行出來正確的答案,但是不知道怎么得來的,這些你都中招了嗎?

1、嚴(yán)格模式與非嚴(yán)格模式的區(qū)別,你了解多少?

JavaScript 語言是一門弱類型語言,存在許多類型錯誤,因此 ES6 引入了嚴(yán)格模式概念。

如果不加 ‘use strict’ 常規(guī)模式下就是屬于非嚴(yán)格模式。

嚴(yán)格模式

在 js 文件頂部添加 ‘use strict’ 就屬于嚴(yán)格模式,嚴(yán)格模式也可以指定在函數(shù)內(nèi)部。

<script>
'use strict'
//或者函數(shù)內(nèi)部
(function(){
'use strict'
})()
</script>

嚴(yán)格模式,是為 js 定義來了一種不同的解析與執(zhí)行模型,在嚴(yán)格模式下,ECMAScipt 3 中一些不解和不確定的行為將得到處理,而且會對不安全的操作會拋出異常?!畊se strict’ 會告訴瀏覽器引擎可以切換到嚴(yán)格模式執(zhí)行。

嚴(yán)格模式與非嚴(yán)格模式區(qū)別

2、深淺拷貝的區(qū)別有哪些?

常見筆試題:

var person = {
name:"前端人",
hobby:['學(xué)習(xí)','敲代碼','潛水']
}
function copy(source){
var newObj = new Object()
for(var i in source){
if(source.hasOwnProperty(i)){
newObj[i] = source[i]
}
}
return newObj
}
var p1 = copy(person);
p1.name = "Web Person"
console.log(person.name)
console.log(p1.name)
p1.hobby = ["內(nèi)卷"]
console.info(person.hobby)
console.info(p1.hobby)
/*運行結(jié)果:
前端人
Web Person
["學(xué)習(xí)", "敲代碼", "潛水"]
["內(nèi)卷"]
*/

試試這道筆試題你會做嗎?

要說 js 的深淺拷貝,就不得不提 js 的兩大數(shù)據(jù)類型:基本數(shù)據(jù)類型和引用類型。

基本數(shù)據(jù)類型的變量名和值都存儲在棧中,對于引用類型的變量名存儲在棧中,而值存儲在堆中。由于存儲方式不同,所以導(dǎo)致了他們復(fù)制的時候方式不同。

賦值

基本數(shù)據(jù)類型賦值的時候,創(chuàng)建的基本數(shù)據(jù)類型會在內(nèi)存中開辟一個新空間把值復(fù)制過來,而引用類型采用的是地址存儲,如果直接把一個引用數(shù)據(jù)直接賦值給另外一個數(shù)據(jù),就相當(dāng)于直接把自己存儲值的地址給了另外一個變量,所以改變一個的值,也會改變另外一個的值。

var a = 1;
var b = a;
b=2;
console.log(a) //1
console.log(b)//2
var p1 = {name:"前端人"}
var p2 = p1
p2.name = "打工仔"
console.log(p1.name) // '打工仔'
console.log(p2.name) // '打工仔'

深淺拷貝是如何定義的?

假設(shè)有 p 和 copyP 兩個變量,如果copyP 是拷貝了 p 的,我們通過修改 copyP 來觀察 p 是否發(fā)生改變,如果跟著改變,就是淺拷貝,如果是不改變,就說明是深拷貝。

基本類型復(fù)制的時候會開辟新的內(nèi)存空間,所以兩個值是相互獨立的,引用類型復(fù)制的時候就要看是復(fù)制的內(nèi)存地址還是復(fù)制一個新的堆。所以深拷貝主要針對的是引用類型的數(shù)據(jù)。

淺拷貝的常見的方式:

1、直接賦值

var arr1 = [1,2,3,4];
var arr2 = arr1;

2、Object.assign

var obj = {
a:1,
b:2
}
var o = Object.assign(obj)

深拷貝的常見方式:

引用數(shù)據(jù)類型最常用的就是 Object 和 Array ,引用數(shù)據(jù)內(nèi)部的數(shù)據(jù)也可以是多樣化的,進行深拷貝時,也要適當(dāng)?shù)馗鶕?jù)數(shù)據(jù)結(jié)構(gòu)進行合適的復(fù)制方式,具體的深拷貝方法分別有:

1、數(shù)組中只包含基本數(shù)據(jù)類型

  • 循環(huán)數(shù)組,將數(shù)組的值復(fù)制出來放入另一個新數(shù)組中
  • 利用 slice 方法
  • 借助 concat 方法
  • 利用 from 方法
  • 使用擴展符 ...

2、對象中只包含基本數(shù)據(jù)類型

  • 利用 for in 循環(huán),將對象的值拿出來
  • 使用 Object 復(fù)制給一個新的空對象
  • 使用 ... 擴展運算符
  • 手動復(fù)制,將屬性值一個一個單獨復(fù)制

3、對象或數(shù)組里含有一層或多層引用數(shù)據(jù)類型時

  • 使用 jQuery 的 extend 方法
  • JSON.parse(JSON.stringify())
  • 使用遞歸自己寫一個深拷貝的方法

深淺拷貝的常見應(yīng)用主要是數(shù)據(jù)的增刪改操作。

3、this 的指向

大廠筆試題:

var name = 'window name'
var p1 = {
name:'p1 name',
showName:function(){
console.info(this.name)
}
}
var fn = p1.showName
fn()
p1.showName()
var p2 = {
name:'p2 name',
showName:function(fun){
fun()
}
}
p2.showName(p1.showName)
p2.showName = p1.showName
p2.showName()
/*
運行結(jié)果:
window name
p1 name
window name
p2 name
*/

這是一道關(guān)于 this 指向的面試題,接下來我們就說說 this 是如何指向的?

this 對象是運行時基于函數(shù)的執(zhí)行環(huán)境綁定的:

  • 在全局函數(shù)中,this 等于 window 。
  • 函數(shù)上下文調(diào)用,嚴(yán)格模式下 this 為 undefined ,非嚴(yán)格模式下,this 指向 window 。
  • 當(dāng)函數(shù)被作為某個對象的方法被調(diào)用時,this 等于那個對象。如果使用 call apply 改變當(dāng)前 this 時,將會指向為傳遞過來的那個 this 。
  • 匿名函數(shù)的執(zhí)行環(huán)境具有全局性,因此 this 指向 window。
  • 構(gòu)造函數(shù)內(nèi)的 this 指向創(chuàng)建的實例對象。
  • dom 事件處理函數(shù),this 指向觸發(fā)該事件的元素。
  • setTimeout 和 setInterval 中的 this 指向全局變量 window

看完上述 this 指向解釋,你就可以做上邊的那道面試題了。

如何改變 this 的指向?

call 、bind 和 apply 這三個函數(shù)都是用來改變 this 指向的,就是改變函數(shù)執(zhí)行時的上下文。

修改上述面試題:

var name = 'window name'
var p1 = {
name:'p1 name',
showName:function(){
console.info(this.name) // p2 name
}
}
var p2 = {
name:'p2 name',
}
p1.showName.call(p2)
p1.showName.apply(p2)
var bind = p1.showName.bind(p2)
bind()

call 、bind 和 apply 改變 this 指向,最大作用就是實現(xiàn)代碼復(fù)用。

至于 call、bind 和 apply 的區(qū)別,可以自行去了解下。

4、隱式轉(zhuǎn)化

console.log( '2'>10 ) //false
console.log( '2'>'10' ) //true
console.log( 'abc'>'b' ) //false
console.log( 'abc'>'aab' ) //true
console.log( undefined == null ) //true
console.log( NaN == NaN )//false
console.log( [] == 0 ) //true
console.log( ![] == 0 ) //true
console.log( [] == [] ) //false
console.log( {} == {} ) //false
console.log( {} == !{} ) //false

對象的類型轉(zhuǎn)換表

有了上邊那個表,事情就變得簡單了!

關(guān)系運算符進行運算時,不同類型的值會自動轉(zhuǎn)化為相同類型值,然后進行

1、兩邊有一個是字符串一個是是數(shù)字時,字符串調(diào)用 Number 方法,將字符串轉(zhuǎn)為數(shù)字,所以:

console.log( '2'>10 )  => console.log( 2>10 ) 

2、如果兩邊都是字符串時,按照字符串的 unicode 編碼來轉(zhuǎn)換的,所以:

'2'.charCodeAt() = 50
'10'.charCodeAt() = 49
console.log( '2'>'10' ) => console.log( 50 >49 )

3、字符串進項比較時,先比較第一位,如果不相等直接得出結(jié)果,如果第一項相等,會繼續(xù)使用第二項進行比較。

console.log( 'abc'>'b' ) // a < b 所以為 false
console.log( 'abc'>'aab' ) // a=a 第二位 b>a 所以為 true

4、轉(zhuǎn)為布爾值都為 false 的類型分別有:undefined 、null 、0、NaN、false、‘’

console.log( undefined == null ) //true

5、NaN表示的是非數(shù)字,但是這個非數(shù)字也是不同的,因此 NaN 不等于 NaN,兩個NaN永遠(yuǎn)不可能相等。

console.log( NaN == NaN )//false

6、關(guān)系運算有一個數(shù)值,將另外一個值也轉(zhuǎn)為 number 類型。

Number([].valueOf().toString()) = 0
console.log( [] == 0 ) => console.log( 0 == 0 ) //true

7、有邏輯運算的,將其他數(shù)據(jù)類型轉(zhuǎn)為 boolean 值。

Boolean([]) = true => 取反 true
console.log( ![] == 0 ) => console.log( false == false ) //true

8、直接使用兩個空數(shù)組比較,數(shù)組地址不同,所以不相等。

console.log( [] == [] ) //false
// 對象地址不一樣
console.log( {} == {} ) //false
{}.valueOf().toString() ="[object Object]"
console.log( {} ==
責(zé)任編輯:姜華 來源: 今日頭條
相關(guān)推薦

2022-07-27 08:27:34

Call前端

2021-07-26 06:57:58

系統(tǒng)CSS Content

2022-03-27 20:37:42

系統(tǒng)抽象語言

2023-05-19 08:21:40

MarginCSS

2019-02-21 14:12:26

前端面試題Vue

2023-08-27 15:57:28

前端開發(fā)

2021-02-02 06:12:39

JavaScript 前端面試題

2022-07-08 08:21:26

JSbind 方法

2022-01-18 08:16:52

Web 前端JavaScript

2024-03-15 08:18:25

volatileAtomic關(guān)鍵字

2018-03-08 18:40:47

Java百度面試題

2017-09-06 09:13:24

2023-12-12 07:40:52

JavaScript面試題前端

2015-07-23 14:13:43

前端開發(fā)面試題

2019-07-19 15:21:00

SQL編程語言NOSQL

2023-04-27 09:08:19

JavaScript隱式類型轉(zhuǎn)換

2020-11-06 09:05:18

前端web開發(fā)

2021-03-15 09:53:37

計算機網(wǎng)絡(luò)面試題

2018-03-07 09:42:07

2022-09-05 17:49:53

Java線程池
點贊
收藏

51CTO技術(shù)棧公眾號

国产精品国产亚洲精品看不卡15| 久久亚洲国产成人| 成人免费无码av| 91官网在线| 粉嫩欧美一区二区三区高清影视| 欧美亚洲午夜视频在线观看| 懂色av粉嫩av浪潮av| 国产精品zjzjzj在线观看| 亚洲国产欧美日韩另类综合| 日韩一区二区电影在线观看| 精品人妻一区二区三区含羞草| 国产日韩亚洲| 久久夜色精品亚洲噜噜国产mv| 午夜一区二区三区免费| 91麻豆精品| 欧美性猛交xxxx乱大交极品| 永久免费看av| av在线电影观看| 成人h版在线观看| 成人欧美在线观看| 无码日韩精品一区二区| 激情综合电影网| 久久精品一区中文字幕| 亚洲综合色一区| 国产成人一二| 日韩一级精品视频在线观看| 中文字幕av专区| 久草热在线观看| 激情综合中文娱乐网| 日韩在线精品视频| 短视频在线观看| 91麻豆精品激情在线观看最新| 91黄色免费观看| 91免费黄视频| 手机av在线播放| 日韩理论片网站| 天堂精品一区二区三区| 日本一级在线观看| 不卡视频在线观看| 99精彩视频在线观看免费| 亚洲在线视频播放| 麻豆精品在线看| 国产精品69av| 精品不卡一区二区| 国产一区二区三区久久| 欧美精品久久久久| 五月天丁香激情| 亚洲色图二区| 久久精品中文字幕免费mv| a级黄色免费视频| 激情综合网五月| 国产一区二区动漫| 国产精品成人在线视频| 欧美日韩精品在线一区| 国产一区二区三区在线| 极品人妻videosss人妻| 残酷重口调教一区二区| 国产亚洲精品久久久久动| 国产黄色大片免费看| 成人影视亚洲图片在线| 最近2019中文字幕大全第二页| 日本一二三不卡视频| 精品久久久久中文字幕小说| 在线播放日韩精品| 国产极品视频在线观看| 天天久久综合| 欧美日韩国产第一页| 国产无码精品在线观看| 亚洲一区二区三区高清| 69久久夜色精品国产69乱青草| 国产一区二区99| 人人狠狠综合久久亚洲| 成人在线一区二区| 亚洲国产成人一区二区| 91在线视频免费观看| 日本高清视频一区二区三区| 免费人成在线观看播放视频| 一区二区三区中文字幕精品精品| 手机福利在线视频| 国产www视频在线观看| 欧美色视频日本高清在线观看| 福利在线一区二区三区| 国产精品1区在线| 日韩av在线免费播放| 国产午夜福利一区| 在线观看国产精品入口| 97久久久久久| 91国在线视频| 成人高清视频免费观看| 天天综合色天天综合色hd| 1024国产在线| 亚洲va国产va欧美va观看| 好男人www社区| 久久伊人影院| 亚洲图片欧美日产| 九九热视频精品| 久久一区二区三区超碰国产精品| 国产在线视频欧美| 香蕉国产在线视频| 综合久久久久综合| av高清在线免费观看| 国产精品亚洲成在人线| 亚洲成人激情图| 91导航在线观看| 亚洲最黄网站| 2019国产精品视频| 国产在线91| 亚洲电影一级黄| 天堂在线中文在线| 蜜桃a∨噜噜一区二区三区| 欧美另类高清videos| 波多野结衣一区二区三区在线| 国产成人免费视频精品含羞草妖精| 日本不卡免费新一二三区| 国产精品探花在线| 911国产精品| 手机看片日韩av| 亚洲综合三区| 国产一区二区中文字幕免费看| 毛片在线看片| 欧美性三三影院| 亚洲专区区免费| 激情亚洲成人| 懂色av一区二区三区在线播放| 欧美精品日韩少妇| 欧美午夜宅男影院| 美女洗澡无遮挡| 亚洲三级毛片| 国产精品久久精品视| 黄av在线免费观看| 欧美日韩成人一区二区| 国产精品20p| 午夜在线观看免费一区| 国产视频在线观看一区| 七七成人影院| 日韩女优视频免费观看| 欧美日韩午夜视频| 国产最新精品免费| 综合久久国产| 2020国产精品小视频| 社区色欧美激情 | 中文字幕精品一区二区精| 国产日产欧产精品推荐色 | 海角国产乱辈乱精品视频| 国产美女免费视频| 亚洲视频在线观看一区| 国产探花在线观看视频| 91精品电影| 91在线中文字幕| 日韩激情av| 欧美精品一区二区高清在线观看| 亚洲激情视频一区| 99久久婷婷国产综合精品电影| 国产极品粉嫩福利姬萌白酱 | 精品国产乱码久久久久久影片| 午夜69成人做爰视频| 国产成人高清在线| 国产主播自拍av| 婷婷成人在线| 国产精品久久久| 浪潮av一区| 日韩免费福利电影在线观看| 久久久久久久久久久久国产| av福利精品导航| 亚洲成熟丰满熟妇高潮xxxxx| 亚洲最好看的视频| 国产日韩在线播放| 色呦呦在线播放| 日韩精品在线免费| 中文字幕视频免费观看| 亚洲美女屁股眼交3| 日韩少妇一区二区| 久久精品二区三区| 夜夜爽99久久国产综合精品女不卡| 国产精品久久久久久久久久辛辛 | 欧美 国产 综合| 精品不卡一区| 91黄在线观看| 性欧美18一19sex性欧美| 日韩午夜在线视频| 免费国产羞羞网站视频| 在线看不卡av| 久久久久久久久久久网| 久久久久久97三级| 婷婷激情5月天| 在线视频精品| 一区二区三区精品国产| 国产无遮挡裸体免费久久| 国产精品久久久久久搜索| 日日夜夜天天综合入口| 亚洲视频在线视频| 国产高清视频免费| 91福利社在线观看| 久久精品第一页| 日本一区二区久久| 中文字幕第3页| 美国毛片一区二区| 免费无遮挡无码永久视频| 91日韩视频| 久久久久天天天天| 精品午夜视频| 国产成人精品在线| 国产探花视频在线观看| 色妞一区二区三区| 黄网在线观看| 精品久久久久香蕉网| 又色又爽又黄无遮挡的免费视频| 亚洲图片欧美一区| 91人妻一区二区三区蜜臀| 久久久久亚洲蜜桃| 无码人妻精品一区二区三| 美女精品自拍一二三四| 凹凸国产熟女精品视频| 欧美日韩1080p| 夜夜春亚洲嫩草影视日日摸夜夜添夜| 台湾色综合娱乐中文网| 成人动漫在线观看视频| 精品成人18| 国产精品自产拍在线观看中文| 亚洲人成在线网站| 欧美—级高清免费播放| 91精品久久久久久粉嫩| 日韩中文字幕在线观看| 搞黄视频免费在线观看| 国产视频久久久久| 日韩中文字幕免费观看| 日韩欧美一二三四区| 国产精品久久婷婷| 欧美日韩在线三区| 最近国语视频在线观看免费播放| 精品欧美一区二区三区| 日本少妇xxxx动漫| 亚洲自拍偷拍图区| 免费中文字幕在线观看| 亚洲激情成人在线| 欧美成人精品激情在线视频| 亚洲另类在线一区| 国产这里有精品| 亚洲黄色片在线观看| 欧美黑人性猛交xxx| 亚洲伦在线观看| www深夜成人a√在线| 国产精品久久久久久亚洲伦| 黄色国产在线播放| 亚洲欧洲色图综合| 97精品在线播放| 亚洲人成影院在线观看| 日本精品人妻无码77777| 一区二区视频在线看| 国产一级二级三级| 亚洲高清免费在线| 91香蕉在线视频| 欧美天天综合色影久久精品| 国产精品免费精品一区| 色哟哟欧美精品| 中文永久免费观看| 5566中文字幕一区二区电影| 99久久精品无免国产免费 | 九色国产在线观看| 亚洲天堂一区二区三区| 中文字幕日本在线观看| 美女扒开尿口让男人操亚洲视频网站| 在线中文字幕视频观看| 午夜精品视频网站| 日韩欧美少妇| 91亚洲人电影| 国内精品麻豆美女在线播放视频 | 制服丝袜一区二区三区| www.久久成人| 日韩av最新在线| 91免费在线| 久久久久久国产精品久久| 日本不卡网站| 国产日韩欧美综合| 极品一区美女高清| 日韩激情久久| 欧美成人久久| 国产三区在线视频| 精品一区二区免费视频| 日韩少妇一区二区| 国产精品嫩草久久久久| 精品一区二区三区四| 在线观看欧美黄色| www.97超碰| 一级做a爰片久久毛片美女图片| av文字幕在线观看| 国产97在线|亚洲| 精品一区二区三区中文字幕在线| 极品校花啪啪激情久久| 999成人网| 国产精品秘入口18禁麻豆免会员| 久热成人在线视频| 在线免费观看污视频| 一区在线中文字幕| 国产又大又黄又粗| 日韩一级成人av| 国产人成在线视频| 韩日欧美一区二区| 亚洲日本免费电影| 欧美精品亚洲| 合欧美一区二区三区| 日日躁夜夜躁aaaabbbb| 91在线视频网址| 黄色一级片在线免费观看| 欧美亚洲尤物久久| 日批视频在线播放| 久久高清视频免费| 日韩一级二级| 久久久久久国产精品一区| 你懂的国产精品永久在线| 日韩中文字幕免费在线| 成人va在线观看| 毛片a片免费观看| 91.com视频| 中文日本在线观看| 国产www精品| 欧洲亚洲成人| 丝袜人妻一区二区三区| 国产一区二区久久| 天天舔天天操天天干| 欧美午夜激情在线| 熟妇人妻av无码一区二区三区| 欧美另类69精品久久久久9999| **精品中文字幕一区二区三区| 亚洲不卡一卡2卡三卡4卡5卡精品| 亚洲一级电影| 日本wwww色| 亚洲精品国产a| a天堂中文在线观看| 久久久999精品| 99精品女人在线观看免费视频 | 91青草视频久久| 亚洲成av人电影| 久久久久久综合网| 亚洲欧洲www| 国产精品视频第一页| 久久精品国产91精品亚洲| 青娱乐极品盛宴一区二区| 视频一区国产精品| 男人的天堂亚洲一区| 女教师淫辱の教室蜜臀av软件| 欧美三级蜜桃2在线观看| av二区在线| 国产在线播放91| 亚洲天天综合| 中国特级黄色片| 亚洲国产精品精华液网站| 少妇高潮一区二区三区69| 91成人国产在线观看| 亚洲素人在线| 15—17女人毛片| 亚洲欧美二区三区| 粉嫩av一区二区夜夜嗨| 久久久久久中文字幕| 欧美一级二级三级视频| 国产精品亚洲二区在线观看| 国产午夜三级一区二区三| 91精品中文字幕| 欧美多人乱p欧美4p久久| 精品欧美午夜寂寞影院| 青青草原成人网| 中文字幕av一区 二区| 国产精品一级二级| 欧美国产日本高清在线| 日韩一级电影| 污版视频在线观看| 一区二区三区中文字幕精品精品| 日本精品一区二区在线观看| 国产suv精品一区二区| 色乱码一区二区三区网站| 无码国产精品一区二区高潮| 亚洲丝袜制服诱惑| 神马午夜精品95| 国产精品免费网站| 亚洲欧美亚洲| 大又大又粗又硬又爽少妇毛片| 欧美色图天堂网| 久久香蕉av| 涩涩日韩在线| 成人污视频在线观看| 日本一本在线观看| 欧美精品午夜视频| 深爱激情综合网| 性折磨bdsm欧美激情另类| 欧美色视频日本版| 超碰个人在线| 欧美日韩精品免费观看| 国产酒店精品激情| 老熟妇仑乱一区二区av| 久久高清视频免费| 亚洲精品小区久久久久久| 一级黄色高清视频| 色婷婷国产精品综合在线观看| av文字幕在线观看| 欧美在线3区| 粉嫩av一区二区三区在线播放 | 国产香蕉精品视频一区二区三区| 欧美成年网站| 黄色永久免费网站| 欧美日韩性视频|