精品欧美一区二区三区在线观看 _久久久久国色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ù)棧公眾號

狠狠88综合久久久久综合网| 中文字幕一区二区三区日韩精品| 国产视频一区二区在线观看| 国产精品成熟老女人| 日韩精品电影一区二区三区| 视频欧美精品| 亚洲成av人片一区二区梦乃| 欧美性bbwbbwbbwhd| 国产男男gay体育生白袜| 亚洲精华国产欧美| 日韩在线视频国产| 无码国产69精品久久久久网站| 欧美暴力调教| 亚洲综合在线五月| 台湾成人av| 嫩草影院一区二区| 另类欧美日韩国产在线| 97久久精品视频| 九九热视频在线免费观看| 人人精品亚洲| 欧美一区二区视频免费观看| 99在线免费视频观看| 永久免费av在线| 国产成人午夜精品5599| 国产精品444| 久久综合激情网| 色无极亚洲影院| 精品视频偷偷看在线观看| 亚洲一级片免费观看| www.com.cn成人| 亚洲一级片在线观看| 天堂精品视频| 欧美色综合一区二区三区| 国产九色精品成人porny| 国产国语刺激对白av不卡| 久草视频精品在线| 欧美1区免费| 在线不卡国产精品| 波多野结衣福利| 国产毛片久久久| 日韩三级av在线播放| 国产美女18xxxx免费视频| 亚洲一区资源| 五月婷婷综合在线| 激情五月婷婷六月| 国产精品刘玥久久一区| 国产精品免费看片| 日韩精品资源| 国产网站在线播放| 久久久综合精品| 精品免费二区三区三区高中清不卡| 99精品视频免费看| 国产一区在线观看视频| 成人国产精品久久久| 久久国产香蕉视频| 久久久久久色| 日本欧美精品在线| 中文字幕69页| 久久久久免费| 国产精品96久久久久久| 欧美brazzers| 日韩成人精品视频| 国产免费一区视频观看免费| 中文字幕在线网站| 久99久精品视频免费观看| 国产欧美日韩91| 国产一区二区三区四区视频| 激情图片小说一区| 99re在线观看| 欧美一级做性受免费大片免费| 成人免费视频一区| 蜜桃麻豆91| www.中文字幕久久久| 国产精品污网站| 精品少妇人妻av一区二区| av香蕉成人| 亚洲午夜久久久久久久久电影网 | 香蕉久久一区二区不卡无毒影院| 黄色www网站| 电影亚洲精品噜噜在线观看| 欧美日韩精品欧美日韩精品| √天堂资源在线| 亚洲无线观看| 精品视频中文字幕| 日韩欧美在线视频播放| 欧美影视一区| 91高潮精品免费porn| 最新国产中文字幕| 国产二区国产一区在线观看| 久久国产一区| 免费在线看a| 亚洲一区二区欧美| 久久久久久香蕉| 老司机亚洲精品一区二区| 亚洲高清在线观看| 五月天综合视频| 天天综合一区| 欧美一级视频一区二区| 91高潮大合集爽到抽搐| 99视频超级精品| 一区二区不卡在线| 日本在线影院| 91精品国产乱码| 丰满圆润老女人hd| 欧美视频二区| 国产精品欧美在线| 日韩一级片免费| 中文字幕亚洲一区二区va在线| 国产精品国产对白熟妇| 黄色精品视频网站| 精品在线欧美视频| 欧美精品色哟哟| 蜜臀av一区二区在线观看| 国产一区喷水| 亚洲wwwww| 色天使久久综合网天天| 欧美日韩人妻精品一区在线| 一区二区在线影院| 国产精品黄页免费高清在线观看| 日韩一区二区三区在线观看视频 | 日韩精品福利视频| 538视频在线| 337p亚洲精品色噜噜噜| 久久久久久成人网| 久久在线91| 精品蜜桃传媒| √8天堂资源地址中文在线| 在线成人午夜影院| 日本污视频网站| 天堂成人免费av电影一区| 精品综合久久| 538视频在线| 精品国产伦理网| 2018天天弄| 精品一区二区三区视频在线观看 | 国产成人精品无码片区在线| 中国成人一区| 91久久精品久久国产性色也91| 福利片在线观看| 日本精品一级二级| 99久久久无码国产精品性| 国产精品地址| 国产福利不卡| 黄色aa久久| 亚洲第一天堂无码专区| 亚洲国产综合久久| 成人av免费在线| 青草青青在线视频 | 日韩国产精品一区二区| 伊人久久av| 亚洲色在线视频| aaa在线视频| 国产网站一区二区三区| 能在线观看的av网站| 精品久久网站| 国产精品入口免费视频一| 岛国最新视频免费在线观看| 欧美色综合久久| 99热在线观看精品| 国产精品一二一区| 青春草国产视频| 精品国产影院| 日韩美女中文字幕| 91se在线| 日韩三级.com| 中日韩黄色大片| 国产清纯美女被跳蛋高潮一区二区久久w| 99精品视频播放| 日韩精品欧美| 亚洲综合日韩在线| av手机免费在线观看| 亚洲欧美福利视频| 国产在成人精品线拍偷自揄拍| 亚洲视频精选在线| www国产视频| 性欧美videos另类喷潮| 天天综合色天天综合色hd| 伊人久久大香伊蕉在人线观看热v 伊人久久大香线蕉综合影院首页 伊人久久大香 | 亚洲精品资源在线| 在线观看色网站| 一区二区在线观看不卡| 97人妻精品一区二区三区免| 麻豆一区二区在线| 亚洲国产精品无码观看久久| 视频一区欧美| 91成人理论电影| 日本乱码一区二区三区不卡| 精品国产欧美一区二区五十路| 好吊视频一区二区三区| 色哦色哦哦色天天综合| 动漫性做爰视频| www国产成人免费观看视频 深夜成人网| 杨幂毛片午夜性生毛片| 黄色av日韩| 亚洲高清在线播放| 超碰成人免费| 国产精品香蕉av| 狠狠操一区二区三区| 日韩一区二区三区xxxx| 天堂av在线7| 欧美一区二区三区在线观看| 成人在线免费看视频| 亚洲欧美日韩在线| 在线免费看黄视频| 国产成人av影院| 日韩一级片播放| 亚洲性人人天天夜夜摸| 亚洲精品乱码久久久久久蜜桃91 | 手机成人在线| 日韩影视高清在线观看| 91精品国产综合久久久久久丝袜| 亚洲欧美se| 欧美极品美女电影一区| 美女av在线播放| 亚洲天堂成人在线| 人人妻人人澡人人爽久久av| 欧美高清视频在线高清观看mv色露露十八| 天天插天天操天天干| 亚洲精品视频在线看| 欧美巨胸大乳hitomi| 2021久久国产精品不只是精品| 亚洲综合av在线播放| 日韩专区一卡二卡| 97国产精东麻豆人妻电影| 欧美久色视频| 成人在线观看www| 成人网18免费网站| 欧美日韩成人一区二区三区| 国产精品中文字幕制服诱惑| 91免费版网站在线观看| 99精品女人在线观看免费视频| 国产精品福利在线观看网址| 自拍网站在线观看| 97久久精品人人澡人人爽缅北| 欧美四级在线| 欧美精品亚州精品| 成人欧美在线| 久久久久www| 精品黄色免费中文电影在线播放| 最近2019年好看中文字幕视频| 国产在线色视频| 亚洲美女在线视频| 可以在线观看的av| 亚洲色图激情小说| 久草视频视频在线播放| 亚洲欧美中文日韩在线| 你懂的在线播放| 亚洲欧美激情精品一区二区| 男操女在线观看| 亚洲图片欧洲图片av| 欧美伦理影视网| 在线观看国产精品91| 午夜激情视频在线观看| 在线播放日韩精品| 国产鲁鲁视频在线观看特色| 九九热精品视频| 美洲精品一卡2卡三卡4卡四卡| 欧美精品videosex牲欧美| 蜜桃在线视频| 日本亚洲欧美成人| 国内欧美日韩| 99se婷婷在线视频观看| 999久久久精品一区二区| 国产精品一区二区免费看| 欧美一级三级| 日韩欧美激情一区二区| 日韩欧美1区| 天天想你在线观看完整版电影免费| 国产精品v亚洲精品v日韩精品| 亚洲 欧美 综合 另类 中字| 羞羞视频在线观看欧美| 91福利国产成人精品播放| 韩国欧美国产1区| 国产精品欧美性爱| 26uuu久久综合| 亚洲国产日韩一区无码精品久久久| 国产精品色噜噜| 国产亚洲精品久久777777| 日韩欧美极品在线观看| 亚洲视频在线观看一区二区| 日韩欧美国产一二三区| 亚洲三区在线播放| 日韩在线小视频| 草草影院在线| 国产精品福利无圣光在线一区| 国产精品成人**免费视频| 精品国产免费久久久久久尖叫 | 日韩亚洲成人av在线| 青青草原国产在线| 国产成人91久久精品| 91麻豆精品| 久久超碰亚洲| 围产精品久久久久久久 | 麻豆精品在线播放| 麻豆短视频在线观看| 欧美国产综合色视频| 久久网中文字幕| 欧美色图免费看| 天天操天天干天天操| 日韩中文字幕亚洲| 欧美办公室脚交xxxx| 亚洲va男人天堂| 精品国产91久久久久久浪潮蜜月| 男人添女荫道口女人有什么感觉| 日日骚欧美日韩| 精品1卡二卡三卡四卡老狼| 国产精品美女久久久久久久久久久 | 亚洲在线一区二区三区| 中文字幕丰满人伦在线| 日韩经典一区二区三区| 一区二区三区伦理| 国产精品一二三视频| 日韩最新在线| av片在线免费| 精品一区二区在线看| 久久丫精品忘忧草西安产品| 午夜久久久久久久久久一区二区| 国产巨乳在线观看| 亚洲网站在线观看| 国产精品蜜芽在线观看| 3d动漫精品啪啪一区二区三区免费 | 国产一区日韩二区欧美三区| 成人黄色a级片| 日韩欧美中文字幕在线播放| 人妻中文字幕一区| 久久久久久国产三级电影| 99久久99九九99九九九| 亚洲精品9999| 免费看欧美女人艹b| 一区二区黄色片| 色域天天综合网| 天堂a√在线| 91高潮精品免费porn| 极品束缚调教一区二区网站 | 99久久99久久精品免费看小说.| 五月综合激情网| 污视频在线免费| 久久久欧美一区二区| www国产精品| 人妻夜夜添夜夜无码av| 成人不卡免费av| 久久精品美女视频| 亚洲精品一区二区三区福利 | 日本精品一区二区三区在线| 欧美三级电影在线| 欧美视频第一区| 久久久影视传媒| 少妇又紧又色又爽又刺激视频| 亚洲午夜av久久乱码| 亚洲www啪成人一区二区| 日韩亚洲视频在线| 免费成人av资源网| 懂色av粉嫩av蜜臀av一区二区三区| 欧美日韩电影在线| 看黄网站在线观看| 97伦理在线四区| 亚洲日本免费| 醉酒壮男gay强迫野外xx| 色欧美88888久久久久久影院| av基地在线| 91香蕉国产在线观看| 好看不卡的中文字幕| av黄色一级片| 91国产成人在线| 五月香视频在线观看| 97中文在线| 99成人在线| 日韩一级片在线免费观看| 欧美精品123区| av老司机免费在线| 日本黑人久久| 国内一区二区视频| 色婷婷在线观看视频| 国产亚洲精品激情久久| 日韩精品一页| 欧美激情视频免费看| 中文字幕第一区第二区| 国内精品久久久久久久久久 | 欧美三级午夜理伦三级老人| 粉嫩一区二区三区在线看| 日韩人妻精品中文字幕| 久久精品2019中文字幕| 久久精品亚洲成在人线av网址| 亚洲一二三区av| 亚洲精品中文在线影院| 欧美777四色影视在线| 成人av电影免费| 日日骚欧美日韩| 国产 日韩 欧美 成人| 一区二区三区精品99久久| 亚洲精品在线播放| 黑森林福利视频导航| 亚洲精品国久久99热| 理论在线观看| 国产欧美一区二区视频| 老司机精品视频导航| 在线观看免费国产视频| 精品久久国产精品| 免费看av成人| 在线播放国产视频|