Web开发

注册

 

发新话题 回复该主题

每日一学2020Web前端面试题汇总开 [复制链接]

1#
Web前端面试题

问题:怎样判断是否是电话号码?

解析:functionisPhone(tel){

varregx=/^1[]\d{9}$/;

returnregx.test(tel);

}

问题:如何进行字符串查找?

解析:请使最基本的遍历来实现判断字符串a是否被包含在字符串b中,并返回第次出现的位置(找不到返回-1)。

a=34;b=;//返回2

a=35;b=;//返回-1

a=;b=12354;//返回

5

isContain(a,b);

functionisContain(a,b)

{for(letiinb){

if(a[0]===b)

{lettmp=true;

for(letjina){

if(a[j]!==b[~~i+~~j])

{tmp=false;

}

}

if(tmp)

{returni;

}

}

}

return-1;

}

AngularJS双向绑定原理?

Angular将双向绑定转换为一堆watch表达式,然后递归这些表达式检查是否发生过变化,如果变了则执行相应的watcher函数(指view上的指令,如ng-bind,ng-show等或是{{}})。等到model中的值不再发生变化,也就不会再有watcher被触发,一个完整的digest循环就完成了。

Angular中在view上声明的事件指令,如:ng-click、ng-change等,会将浏览器的事件转发给$scope上相应的model的响应函数。等待相应函数改变model,紧接着触发脏检查机制刷新view。

watch表达式:可以是一个函数、可以是$scope上的一个属性名,也可以是一个字符串形式的表达式。$watch函数所监听的对象叫做watch表达式。watcher函数:指在view上的指令(ngBind,ngShow、ngHide等)以及{{}}表达式,他们所注册的函数。每一个watcher对象都包括:监听函数,上次变化的值,获取监听表达式的方法以及监听表达式,最后还包括是否需要使用深度对比(angular.equals())

以上就是小科今天整理提供的Web前端开发面试题,希望为Web前端同学提供了有用的面试素材,以后小科每日均会提供Python、Web及MySQL数据库相关的习题。学习没有捷径,希望大家都能少走一些弯路,顺利找到工作!

分享 转发
TOP
发新话题 回复该主题