第一题
setTimeout(() => {
console.log(1)
});
new Promise(resolve => {
resolve()
console.log(2)
}).then(() => {
console.log(3)
Promise.resolve().then(() => {
console.log(4)
}).then(() => {
Promise.resolve().then(() => {
console.log(5)
})
})
})
第二题
var obj = {
'2': 3,
'3': 4,
'length': 2,
'splice': Array.prototype.splice,
'push': Array.prototype.push
}
obj.push(1)
obj.push(2)
console.log(obj)
第三题
var arr = [[1,2,2],[3,4,5,5],[6,7,8,9,[11,12,[12,13,[14]]]],10]
编写一个程序将数组扁平化去除其中重复部分数据,最后得到一个升序且不重复的数组
第四题
改造下面的代码,使之输出0-9,写出你能想到的所有方法
for (var i = 0; i < 10; i++) {
setTimeout(() => {
console.log(i)
}, 1000);
}
第五题
var a = 10;
(function () {
console.log(a);
a = 5;
console.log(window.a);
var a = 20;
console.log(a)
})()
第六题
var a = {},b='123',c=123;
a[b]='b';
a[c]='c';
console.log(a[b])
var a = {},b=Symbol('123'),c=Symbol('123');
a[b]='b';
a[c]='c';
console.log(a[b])
var a = {},b={key: '123'},c={key: '456'};
a[b]='b';
a[c]='c';
console.log(a[b])
第七题
function changeObjProperty (o) {
o.siteUrl='www.baidu.com';
o = new Object();
o.siteUrl='www.google.com'
}
let webSite = new Object();
changeObjProperty(webSite);
console.log(webSite.siteUrl)
第八题
实现如下继承函数,传入A和B两个类,要求A要继承于B
function inherit (A, B) {
}
第九题
实现一个动画函数,实现A元素围绕B元素匀速旋转动画?无需考虑透明度的变化。
function animation(el, start, end, during) {
}
第十题
实现一个简易的前端模板引擎
function tpl(template, data) {
}
// 使用
tpl('<div class="{%className%}">{%name%}</div>', {name: 123, className: 'hd'})
// <div class="hd">123</div>
完