装逼技巧:程序员如何用代码证明自己牛逼!

装逼技巧:程序员如何用代码证明自己牛逼!

本文秉承着:你看不懂是你SB,我写的代码就要牛逼。

1、单行写一个评级组件

“★★★★★☆☆☆☆☆”.slice(5 – rate, 10 – rate);定义一个变量rate是1到5的值,然后执行上面代码,看图

《装逼技巧:程序员如何用代码证明自己牛逼!》

才发现插件什么的都弱爆了

《装逼技巧:程序员如何用代码证明自己牛逼!》

2、如何装逼用代码骂别人SB

《装逼技巧:程序员如何用代码证明自己牛逼!》

《装逼技巧:程序员如何用代码证明自己牛逼!》

3、如何用代码优雅的证明自己NB

这个牛逼了

console.log


《装逼技巧:程序员如何用代码证明自己牛逼!》

《装逼技巧:程序员如何用代码证明自己牛逼!》

4、JavaScript错误处理的方式的正确姿势

,舅服你

try{

something

}catch(e){

window.location.href=

“http://stackoverflow.com/search?q=

[js]+“+e.message;

}


《装逼技巧:程序员如何用代码证明自己牛逼!》

《装逼技巧:程序员如何用代码证明自己牛逼!》

5、论如何优雅的取随机字符串

Math.random.toString(16).substring(2)Math.random.toString(36).substring(2)


《装逼技巧:程序员如何用代码证明自己牛逼!》

6、论如何优雅的取整

vara=~~2.33

varb=2.33|0

varc=2.330


《装逼技巧:程序员如何用代码证明自己牛逼!》

7、这个我服,还有这个你很机智

我服

while(1){

alert(‘牛逼你把我关了啊’)

}


你很机智,好一个障眼法

清除缓存:<a href=“javascript:alert(‘清除成功’);”清除缓存</a


《装逼技巧:程序员如何用代码证明自己牛逼!》

8、逗号运算符

vara=0;

varb=(a++99);

console.log(a);// 1

console.log(b);// 99


《装逼技巧:程序员如何用代码证明自己牛逼!》

9、论如何最佳的让两个整数交换数值

常规办法:

vara=1

b=2;

a+=b;

b=a-b;

a-=b;


缺点也很明显,整型数据溢出,对于32位字符最大表示数字是2147483647,如果是2147483645和2147483646交换就失败了。黑科技办法:

a^=b;

b^=a;

a^=b;


《装逼技巧:程序员如何用代码证明自己牛逼!》

哈哈

,看不懂的童鞋建议去补习一下C语言的位操作,我就不去复习了,以前学嵌入式时候学的位操作都忘了

10、实现标准JSON的深拷贝

vara={

a:1b:{c:1d:2}

}

varb=JSON.parse(JSON.stringify(a))


《装逼技巧:程序员如何用代码证明自己牛逼!》

不考虑IE的情况下,标准JSON格式的对象蛮实用,不过对于undefined和function的会忽略掉。

11、不用Number、parseInt和parseFloat和方法把”1″字符串转换成数字

哈哈,不准用强制类型转换,那么就想到了强大了隐式转换

vara=1

+a


《装逼技巧:程序员如何用代码证明自己牛逼!》

12、如何装逼的写出”hello world!”

滚动条很长哦

居然能运行,牛逼的隐式转换

《装逼技巧:程序员如何用代码证明自己牛逼!》

《装逼技巧:程序员如何用代码证明自己牛逼!》

《装逼技巧:程序员如何用代码证明自己牛逼!》

13、0.1 + 0.2 == 0.3

《装逼技巧:程序员如何用代码证明自己牛逼!》

0.1 +0.2 == 0.3竟然是不成立的。。。。所以这就是为什么数据库存储对于货币的最小单位都是分。

简单说,0.1和0.2的二进制浮点表示都不是精确的,所以相加后不是0.3,接近(不等于)0.30000000000000004。

所以,比较数字时,应该有个宽容值。ES6中这个宽容值被预定义了:Number.EPSILON。

最后奉劝大家一句:莫装逼、白了少年头,2333。。。

– The End –

点赞

发表评论

电子邮件地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据