日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

20190423面试记录

發(fā)布時(shí)間:2024/7/5 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 20190423面试记录 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

1)apply,call,bind的區(qū)別 ?

應(yīng)用場(chǎng)景:用于改變this的指向

apply接收兩個(gè)參數(shù),第一個(gè)函數(shù)this將指向的對(duì)象,第二個(gè)是數(shù)組函數(shù)接收的參數(shù)

call接收多個(gè)參數(shù),第一個(gè)函數(shù)this將指向的對(duì)象,后面依次是函數(shù)接收的參數(shù)

bind接收多個(gè)參數(shù),第一個(gè)函數(shù)this將指向的對(duì)象,后面依次是函數(shù)接收的參數(shù),不會(huì)執(zhí)行該函數(shù),而是會(huì)返回已經(jīng)改變了this的實(shí)例

2)v-for 和 v-if哪個(gè)先執(zhí)行

v-for先執(zhí)行

3)下面代碼是怎么執(zhí)行的

var newPromise=new Promise(function(resolve,reject){console.log(1)resolve();console.log(2)}) newPromise.then(function(){console.log(3) }) console.log(4)

1243,只有then里面的函數(shù)是回調(diào)的

4)? angular的臟值檢查?

1、檢查數(shù)據(jù)模型的值發(fā)生改變時(shí)(僅限于內(nèi)置的指令及方法 1、用戶輸入,點(diǎn)擊,提交 ? 2、請(qǐng)求服務(wù)端數(shù)據(jù)? 3、定時(shí)事件)

2、會(huì)執(zhí)行$digest遍歷監(jiān)聽器判斷臟值(判斷新的值和舊的值是否相同)

3、如果有臟值(值發(fā)生了變化)則持續(xù)進(jìn)行$digest直到值穩(wěn)定不在發(fā)生變化,才會(huì)在view里渲染出來

function Scope() {this.$$watchers = []; } var aScope = new Scope(); aScope.firstName = 'Jane'; aScope.lastName = 'Smith';Scope.prototype.$watch = function(watchFn, listenerFn) {var watcher = {watchFn: watchFn,listenerFn: listenerFn};this.$$watchers.push(watcher); };Scope.prototype.$digest = function() {var self = this;_.forEach(this.$$watchers, function(watch) {var newValue = watch.watchFn(self);var oldValue = watch.last;if (newValue !== oldValue) {watch.listenerFn(newValue, oldValue, self);}watch.last = newValue;}); };

?

5)angular里面的service,factory,provide有什么區(qū)別?

1、相同點(diǎn)使用時(shí)都是通過依賴注入來使用

2、定義時(shí)的差別

factory相當(dāng)于提供一個(gè)方法,通過這個(gè)方法定義一個(gè)對(duì)象,并且給這個(gè)對(duì)象添加屬性和方法,返回這個(gè)對(duì)象

service的話是直接給this添加屬性和方法

provider的話必須體統(tǒng)$get方法該方法和factory一樣,并且在加載module時(shí)啟動(dòng)時(shí)進(jìn)行配置

?

6)AngularJS,Vue,React的優(yōu)缺點(diǎn)?

不同點(diǎn):

1、AngularJS有依賴注入,雙向數(shù)據(jù)綁定,兼容ie8及ie8以上,使用臟檢查,學(xué)習(xí)成本比較大

2、React函數(shù)式編程JSX語法,兼容性好,對(duì)javascript基礎(chǔ)要求較高

3、Vue只兼容ie8以上版本,采用依賴追蹤并且使用異步隊(duì)列更新,所有數(shù)據(jù)的都是獨(dú)立觸發(fā)的,容易上手

相同點(diǎn):

1、React和Vue都有虛擬dom,單向數(shù)據(jù)流

2、Vue與AngularJS都有模板語法

?

7)angular的常用方法$eval()?

$eval(expression, locals)立刻解析和計(jì)算出一個(gè) scope 表達(dá)式

$destroy從 scope 鏈里移除該 scope; scope 和后代們不會(huì)收到事件, watcher 也不再被觸發(fā)。

$broadcast(evt, args)發(fā)送事件 evt, 在當(dāng)前scope 以及它 所有的 children 上觸發(fā)。

$emit(evt, args)發(fā)送事件 evt, 在scope 鏈上冒泡,在當(dāng)前scope 以及所有的 $parents 上觸發(fā),包括 $rootScope。

$watch(watchExp, listener, objectEquality)為scope添加一個(gè) watch 監(jiān)聽器。

?

轉(zhuǎn)載于:https://www.cnblogs.com/llcMite/p/10757398.html

總結(jié)

以上是生活随笔為你收集整理的20190423面试记录的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。