一些js代码优化方法,写出一手优雅的代码
2018-01-29 14:35
1061 查看
js代码
<script> function test1(){ // 如何装逼用代码骂别人SB console.log('(!(~+[])+{})[--[~+""][+[]]*[~+[]] + ~~!+[]]+({}+[])[[~!+[]]*~+[]]',(!(~+[])+{})[--[~+""][+[]]*[~+[]] + ~~!+[]]+({}+[])[[~!+[]]*~+[]]); } function test2(){ // 如何用代码优雅的证明自己NB console.log('([][[]]+[])[+!![]]+([]+{})[!+[]+!![]]',([][[]]+[])[+!![]]+([]+{})[!+[]+!![]]); } function test3(){ // 如何优雅的取随机字符串 console.log('Math.random().toString(16).substring(2)',Math.random().toString(16).substring(2)); console.log('Math.random().toString(36).substring(2)',Math.random().toString(36).substring(2)); } function test4(){ // 如何优雅的取整 var a = ~~2.33 //这种方法还可以将字符串转换成数字类型 var b= 2.33 | 0 var c= 2.33 >> 0 console.log('var a = ~~2.33 var b= 2.33 | 0 var c= 2.33 >> 0',a, b, c); } function test5(){ // 如何优雅的实现金钱格式化:1234567890 –> 1,234,567,890 var test1 = '1234567890' var format = test1.replace(/\B(?=(\d{3})+(?!\d))/g, ',') console.log('var test1 = 1234567890 var format = test1.replace(/\B(?=(\d{3})+(?!\d))/g, ',')',format) // 1,234,567,890 } // 逗号运算符 function test6(){ var a = 0; var b = ( a++, 99 ); console.log('var a = 0; ',a); // 1 console.log('var b = ( a++, 99 ); ',b); // 99 } // 论如何最佳的让两个整数交换数值 function test7 (){ var a = 0; var b = ( a++, 99 ); a ^= b; b ^= a; a ^= b; console.log ('var a = 0; var b = ( a++, 99 ); a ^= b; b ^= a; a ^= b;',a,b); } // 实现标准JSON的深拷贝 function test8(){ var a = { a: 1, b: { c: 1, d: 2 } } var b=JSON.parse(JSON.stringify(a)) console.log(' var a = {a: 1, b: { c: 1, d: 2 } } var b=JSON.parse(JSON.stringify(a))',b); } // 不用Number、parseInt和parseFloat和方法把”1”字符串转换成数字 function test9(){ var a =1 ; +a console.log('var a =1 ; +a',typeof(a)); } function test10(){ console.log('parseInt(0.0000008) === 8',parseInt(0.0000008) === 8) console.log('++[[]][+[]]+[+[]] == 10',++[[]][+[]]+[+[]] == 10) console.log('0.1 + 0.2 == 0.3',0.1 + 0.2 == 0.3) } // 0.1 +0.2 == 0.3竟然是不成立的。。。。所以这就是为什么数据库存储对于货币的最小单位都是分。 // 简单说,0.1和0.2的二进制浮点表示都不是精确的,所以相加后不是0.3,接近(不等于) // 0.30000000000000004。 // 所以,比较数字时,应该有个宽容值。ES6中这个宽容值被预定义了:Number.EPSILON。 // 最短的代码实现数组去重 function test11(){ console.log('[...new Set([1, "1", 2, 1, 1, 3])]',[...new Set([1, "1", 2, 1, 1, 3])]); } // 取出一个数组中的最大值和最小值 function test12(){ var numbers = [5, 458 , 120 , -215 , 228 , 400 , 122205, -85411]; var maxInNumbers = Math.max.apply(Math, numbers); var minInNumbers = Math.min.apply(Math, numbers); console.log('var numbers = [5, 458 , 120 , -215 , 228 , 400 , 122205, -85411]; var maxInNumbers = Math.max.apply(Math, numbers); var minInNumbers = Math.min.apply(Math, numbers);',maxInNumbers,minInNumbers); } // 这个就厉害了 function test13(){ while (1) { alert('牛逼你把我关了啊') } } </script>
html代码
<html style="margin-left:300px;"> <p> <button id="test1" onclick="test1()">test1</button> 如何装逼用代码骂别人SB</p> <p><button id="test2" onclick="test2()">test2</button> 如何用代码优雅的证明自己NB</p> <p><button id="test3" onclick="test3()">test3</button> 如何优雅的取随机字符串</p> <p><button id="test4" onclick="test4()">test4</button> 如何优雅的取整</p> <p><button id="test5" onclick="test5()">test5</button> 优雅的实现金钱格式化</p> <p><button id="test6" onclick="test6()">test6</button> 逗号运算符</p> <p><button id="test7" onclick="test7()">test7</button> 如何最佳的让两个整数交换数值</p> <p><button id="test8" onclick="test8()">test8</button> 实现标准JSON的深拷贝</p> <p><button id="test9" onclick="test9()">test9</button> 不用Number、parseInt和parseFloat和方法把”1”字符串转换成数字</p> <p><button id="test10" onclick="test10()">test10</button> 二进制浮点 </p> <p><button id="test11" onclick="test11()">test11</button> 最短的代码实现数组去重</p> <p><button id="test12" onclick="test12()">test12</button> 取出一个数组中的最大值和最小值</p> <p><button id="test13" onclick="test13()">test13</button> </p> </html>
相关文章推荐
- 一些代码优化的方法
- 关于一些代码效率优化的方法(下)
- 不修改代码优化ASP.NET网站性能的一些方法
- 不修改代码就能优化ASP.NET网站性能的一些方法
- 不修改代码就能优化ASP.NET网站性能的一些方法
- 不修改代码就能优化ASP.NET网站性能的一些方法
- 不修改代码就能优化ASP.NET网站性能的一些方法
- c程序代码优化的一些方法
- 优化java代码的一些小技巧(三)————重写equals()方法
- 一些代码优化的方法
- Java优化集合代码的一些方法
- 不修改代码优化 ASP.NET 网站性能的一些方法
- 不修改代码就能优化ASP.NET网站性能的一些方法
- 不修改代码就能优化ASP.NET网站性能的一些方法(推荐)
- 不修改代码就能优化ASP.NET网站性能的一些方法
- 不修改代码就能优化ASP.NET网站性能的一些方法
- [转]一些代码优化的方法
- C代码优化的一些方法
- AS3的一些代码优化方法
- c程序代码优化的一些方法