1. for循环
console.log('begin')
for (var i = 0; i < 5; i++) {
setTimeout(function () {
console.log(i)
},1000);
}
console.log('end')
复制代码
result:
begin
end
5
5
5
5
5
复制代码
2. this指向
var a = 1;
function fun1(){
var a = 2;
console.log(this.a+a);
}
function fun2(){
var a = 10;
fun1();
}
fun2()
复制代码
执行fun2()会输出3
3. 实现一个js模版引擎
var tpl = 'Hei, my name is <%name%>, and I\'m <%age%> years old.';
var data = {
"name": "Barret Lee",
"age": "20"
};
var result = tpl.replace(/<%([^%>]+)?%>/g, function(s0, s1){
return data[s1];
});
复制代码
JavaScript模板引擎原理,几行代码的事儿 正则表达式还是要抽出一天的时间来看看
4. js实现a围绕b旋转
5. 实现concat让两个有序数组合并 如: a = [2,4,6,8,10,13,15]; b = [1,3,5,7,8,9,11]; 合并后为[1,2,3,4,5,6,7,8,8,9,10,11,13,15]
6. 实现reverse函数