1、使用ES5实现该方法
1 const obj = {a:1,b:2,c:3}; 2 function foo(o,arr) { 3 let obj = {}; 4 arr.map(function (key) { 5 obj[key] = o[key]; 6 }); 7 console.log(obj); 8 } 9 foo(obj,["a","c"]); //输出 {a:1,c:3}
2、服务端如何区分不同用户
3、循环/闭包
1 //每隔1秒打印出一个5
2 for (var i = 0; i < 5; i++) {
3 setTimeout(function() {
4 console.log(i);
5 }, 1000 * i);
6 }
7
8 //每隔1秒打印出:0 1 2 3 4
9 for (var i = 0; i < 5; i++) {
10 (function(i) {
11 setTimeout(function() {
12 console.log(i);
13 }, i * 1000);
14 })(i);
15 }
16
17 //每隔1秒打印出一个5
18 for (var i = 0; i < 5; i++) {
19 (function() {
20 setTimeout(function() {
21 console.log(i);
22 }, i * 1000);
23 })(i);
24 }
25
26 for (var i = 0; i < 5; i++) {
27 setTimeout((function(i) {
28 console.log(i);
29 })(i), i * 1000);
30 }
31
32 //控制台打印:2 3 5 4 1
33 setTimeout(function() {
34 console.log(1)
35 }, 0);
36 new Promise(function executor(resolve) {
37 console.log(2);
38 for( var i=0 ; i<10000 ; i++ ) {
39 i == 9999 && resolve();
40 }
41 console.log(3);
42 }).then(function() {
43 console.log(4);
44 });
45 console.log(5);