你遇到的最牛的面试官是怎样的?
刨根问底?深入底层?
那你有没有见过现场直接问问题的?信手拈来那种...
问题一:现在有一个字符串,里面包含数字,大小写字母,求大写字母出现的次数
......
答案:
// 定义字符串
var str = "AbGk015dndhKB";
// 定义一个计数变量
var count = 0;
// 正则规则
var reg = /[A-Z]/;
// 遍历字符串
for (var i = 0; i < str.length; i++) {
if (reg.test(str[i])) {//如果匹配上,就统计一次
count++;
}
};
console.log(count);
......
问题二:angular Vue双向数据绑定原理
在html中先定义一个angular的app,指定一个angular的controller,则该controller会对应于一个作用域(可以用$scope前缀来指定作用域中的属性和方法等). 则在该ngCtl的作用域内的HTML标签, 其值或者操作都可以通过$scope的方式跟js中的属性和方法进行绑定.
这样, 就实现了NG的双向数据绑定: 即HTML中呈现的view与AngularJS中的数据是一致的. 修改其一, 则对应的另一端也会相应地发生变化.
这样的方式,使用起来真的非常方便. 我们仅关心HTML标签的样式, 及其对应在js中angular controller作用域下绑定的属性和方法. 仅此而已, 将众多复杂的DOM操作全都省略掉了
问题三:如何不借助第三个变量,交换两个变量的值 var a = "a123",
b = "b234";
// 方法一:
a=[b,b=a][0];
// 方法二:
// [a, b] = [b, a]
console.log("a="+a);//b234
console.log("b="+b);//a123
未完持续...