12个实用的 Javascript 奇淫技巧

这里分享12个实用的 Javascript 奇淫技巧。JavaScript自1995年诞生以来已过去了16个年头,如今全世界无数的网页在依靠她完成各种关键任务,JavaScript曾在Tiobe发布的编程语言排行榜中排到了第8名,紧随C#,JavaScript从过去装饰性的一种脚本语言转变为主流的编程语言,人们用它来开发更大更复杂的程序。

1. 取整同时转成数值型:

‘10.567890‘|0

结果: 10

‘10.567890‘^0

结果: 10

-2.23456789|0

结果: -2

~~-2.23456789

结果: -2

2. 日期转数值:

var d = +new Date(); //1295698416792

3. 类数组对象转数组:

var arr = [].slice.call(arguments)

4. 漂亮的随机码:

Math.random().toString(16).substring(2); //14位
Math.random().toString(36).substring(2); //11位

5. 合并数组:

var a = [1,2,3];
var b = [4,5,6];
Array.prototype.push.apply(a, b);
uneval(a); //[1,2,3,4,5,6]

6. 用0补全位数:

function prefixInteger(num, length) {
  return (num / Math.pow(10, length)).toFixed(length).substr(2);
}

7. 交换值:

a= [b, b=a][0];

8. 将一个数组插入另一个数组的指定位置:

var a = [1,2,3,7,8,9];
var b = [4,5,6];
var insertIndex = 3;
a.splice.apply(a, Array.concat(insertIndex, 0, b));
// a: 1,2,3,4,5,6,7,8,9

9. 删除数组元素:

var a = [1,2,3,4,5];
a.splice(3,1);

10. 快速取数组最大和最小值

Math.max.apply(Math, [1,2,3]) //3
Math.min.apply(Math, [1,2,3]) //1

11. 条件判断:

var a = b && 1;

相当于

if (b) {
  a = 1
}
var a = b || 1;

相当于

if (b) {
  a = b;
} else {
  a = 1;
}

12. 判断IE:

var ie = /*@cc_on [email protected]*/false;
时间: 2024-10-25 18:16:56

12个实用的 Javascript 奇淫技巧的相关文章

javascript奇淫技巧

1. 取整同时转成数值型: 1 console.log("10.340"|0); //10 2 console.log("10.560"^0); //10 3 console.log(-2.25|0); //-2 4 console.log(~~-2.25); //-2 2.日期转数值: var d = +new Date(); //1499149610813 3. 随机码: 1 Math.random().toString(16).substring(2); //

C之奇淫技巧——宏的妙用

一.宏列表 当遇到这样的问题的时候: 有一个标记变量,其中的每个位代表相应的含义.我们需要提供一组函数来访问设置这些位,但是对于每个标记位的操作函数都是相似的.若有32个位,难道要搞32套相似的操作函数么? 你也许会说,用一套操作函数,根据传入的参数来判断对哪个位操作.这样固然可行,但是 ①不够直观.例如访问Movable标记位,对于用户来说,is Movable()是很自然的方式,而我们只能提供这样的接口isFlag(Movable) ②扩展性差.若以后增加删改标记位,则需要更改isFlag等

优化DP的奇淫技巧

DP是搞OI不可不学的算法.一些丧心病狂的出题人不满足于裸的DP,一定要加上优化才能A掉. 故下面记录一些优化DP的奇淫技巧. OJ 1326 裸的状态方程很好推. f[i]=max(f[j]+sum[i]-sum[j]-100*I) (1<=j<i&&f[j]>=100*i) 然后把无关于j的提出来. f[i]=max(f[j]-sum[j])+sum[i]-100*i; 好的,现在只需要把在O(1)的时间内求出max(f[j]-sum[j])就是坠吼得. 考虑两个决策

NGINX的奇淫技巧 —— 6. IF实现数学比较功能 (1)

NGINX的奇淫技巧 —— 6. IF实现数学比较功能 (1) ARGUS 1月13日 发布 推荐 0 推荐 收藏 3 收藏,839 浏览 nginx的if支持=.!= 逻辑比较, 但不支持if中 <.<.>=.<= 比较.本示例使用了set-misc-nginx-module location = /test/ { default_type html; set_random $a 0 9; #$a 随机 从0-9取 if ( $a <= 4 ){ #$a 如果 < 4

C++奇淫技巧,程序员为啥天天学继承与派生,真的有这么难吗

继承与派生 1.1继承与派生的概念 在C++中,可重用性是通过继承这一机制来实现的.所谓继承,就是在一个已存在的类的基础上建立一个新的类.已存在的类称为基类,新建立的类成为派生类.(与对象的复制做区别)一个新类从已有的类那里获得其已有特性,这种现象称为类的继承. C++奇淫技巧,程序员为啥天天学继承与派生,真的有这么难吗派生类继承了基类的所有数据成员和成员函数,并可以对成员作必要的增加或调整.创一个小群,供大家学习交流聊天如果有对学C++方面有什么疑惑问题的,或者有什么想说的想聊的大家可以一起交

ASP.NET Core 奇淫技巧之伪属性注入

原文:ASP.NET Core 奇淫技巧之伪属性注入 一.前言 开局先唠嗑一下,许久未曾更新博客,一直在调整自己的状态,去年是我的本命年,或许是应验了本命年的多灾多难,过得十分不顺,不论是生活上还是工作上.还好当我度过了所谓的本命年后,许多事情都在慢慢变好,我将会开始恢复更新博客,争取恢复到以前的速度上(因为工作比较忙,所以这个过程可能需要一段时间). 二.关于属性注入 说到属性注入,我们就不得不提一下 DI(Dependency Injection),即依赖注入,用过 ASP.NET Core

CSS布局奇淫技巧之--各种居中

居中是我们使用css来布局时常遇到的情况.使用css来进行居中时,有时一个属性就能搞定,有时则需要一定的技巧才能兼容到所有浏览器,本文就居中的一些常用方法做个简单的介绍. 注:本文所讲方法除了特别说明外,都是兼容IE6+.谷歌.火狐等主流浏览器的. 先来说几种简单的.人畜无害的居中方法 1. 把margin设为auto 具体来说就是把要居中的元素的margin-left和margin-right都设为auto,此方法只能进行水平的居中,且对浮动元素或绝对定位元素无效. 2.使用 text-ali

CSS布局奇淫技巧之--各种居中&lt;转&gt;

居中是我们使用css来布局时常遇到的情况.使用css来进行居中时,有时一个属性就能搞定,有时则需要一定的技巧才能兼容到所有浏览器,本文就居中的一些常用方法做个简单的介绍. 注:本文所讲方法除了特别说明外,都是兼容IE6+.谷歌.火狐等主流浏览器的. 先来说几种简单的.人畜无害的居中方法 1. 把margin设为auto 具体来说就是把要居中的元素的margin-left和margin-right都设为auto,此方法只能进行水平的居中,且对浮动元素或绝对定位元素无效. 2.使用 text-ali

javascript在调试bug的奇淫技巧(Chrome, Firebug, Filddle 调试)

Fiddler Fiddler调式使用知多少(一)深入研究 微信fiddle 微信fiddle Chrome Google Chrome 官方 Chrome - 基础 Chrome - 进阶 Chrome - 性能 Chrome - 性能进阶 Chrome - 移动 Chrome - 使用技巧 Chrome - Console控制台不完全指南 Chrome - Workspace使浏览器变成IDE network面板 chrome开发工具快捷键 chrome调试工具 Chrome 开发工具 Wo