MIRROR: javascript for 馃悳's, a tiny runtime with big ambitions
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

at master 92 lines 2.2 kB view raw
1function test1() { 2 let obj = {}; 3 obj.x = 10; 4 obj.y = 20; 5 return obj.x + obj.y; 6} 7for (let i = 0; i < 110; i++) test1(); 8console.log('[test1] object put/get field:', test1(), 'ok:', test1() === 30); 9 10function test2() { 11 let obj = {}; 12 let key = 'hello'; 13 obj[key] = 42; 14 return obj[key]; 15} 16for (let i = 0; i < 110; i++) test2(); 17console.log('[test2] computed prop access:', test2(), 'ok:', test2() === 42); 18 19function test3(a, b, c) { 20 let arr = [a, b, c]; 21 return arr[0] + arr[1] + arr[2]; 22} 23for (let i = 0; i < 110; i++) test3(1, 2, 3); 24console.log('[test3] array literal:', test3(10, 20, 30), 'ok:', test3(10, 20, 30) === 60); 25 26var globalVal = 0; 27function test4(n) { 28 globalVal = n; 29 return globalVal; 30} 31for (let i = 0; i < 110; i++) test4(i); 32console.log('[test4] put global:', test4(99), 'ok:', test4(99) === 99); 33 34function test5(n) { 35 let obj = {}; 36 for (let i = 0; i < n; i++) { 37 obj['k' + i] = i; 38 } 39 return obj.k0 + obj.k1 + obj.k2; 40} 41for (let i = 0; i < 110; i++) test5(5); 42console.log('[test5] loop object build:', test5(5), 'ok:', test5(5) === 3); 43 44function test6(n) { 45 let sum = 0; 46 for (let i = 0; i < n; i++) { 47 let pair = [i, i + 1]; 48 sum = sum + pair[0] + pair[1]; 49 } 50 return sum; 51} 52for (let i = 0; i < 110; i++) test6(10); 53let r6 = test6(100); 54console.log('[test6] array in loop:', r6, 'ok:', r6 === 10000); 55 56function test7() { 57 let arr = [0, 0, 0]; 58 arr[0] = 10; 59 arr[1] = 20; 60 arr[2] = 30; 61 return arr[0] + arr[1] + arr[2]; 62} 63for (let i = 0; i < 110; i++) test7(); 64console.log('[test7] put_elem numeric:', test7(), 'ok:', test7() === 60); 65 66function test8() { 67 let arr = []; 68 return arr.length; 69} 70for (let i = 0; i < 110; i++) test8(); 71console.log('[test8] empty array:', test8(), 'ok:', test8() === 0); 72 73function test9() { 74 let outer = {}; 75 outer.inner = {}; 76 outer.inner.val = 42; 77 return outer.inner.val; 78} 79for (let i = 0; i < 110; i++) test9(); 80console.log('[test9] nested objects:', test9(), 'ok:', test9() === 42); 81 82function reader(obj) { 83 return obj.a + obj.b; 84} 85function test10() { 86 let o = {}; 87 o.a = 3; 88 o.b = 7; 89 return reader(o); 90} 91for (let i = 0; i < 110; i++) test10(); 92console.log('[test10] obj as arg:', test10(), 'ok:', test10() === 10);