js 小技巧

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


console.log('10.567890' | 0);
// 结果: 10
console.log('10.567890' ^ 0);
// 结果: 10
console.log(-2.23456789 | 0);
// 结果: -2
console.log(~~-2.23456789);
// 结果: -2

2、 日期转数值:


var d = +new Date();
//1477367324096 //每次数值都不一样
console.log(d);

3、 类数组对象转数组:


//var arr = [].slice.call(arguments[0])
function newArr(objArr) {
var arr = [].slice.call(objArr);
return arr;
}
console.log(newArr({'1': 'gg', '2': 'love', '4': 'meimei', length: 5}));

4、 随机码:


{
let a = Math.random().toString(16).substring(2);
//14位
let b = Math.random().toString(36).substring(2);
//11位
console.log(a, b);
}

5、合并数组:


{
let a = [1, 2, 3];
let b = [4, 5, 6];
console.log(a, b);
Array.prototype.push.apply(a, b);
console.log(eval(a));}

6、用0补全位数:


{
function prefixInteger(num, length) {
return (num / Math.pow(10, length)).toFixed(length).substr(2);
}
var n = prefixInteger(90, 3);
console.log(n);

7、交换值:


{
let a,b;
a = [b, b = a][0];
}

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


{
let a = [1, 2, 3, 7, 8, 9];
let b = [4, 5, 6];
let insertIndex = 3;
a.splice.apply(a, [].concat(insertIndex, 0, b));
console.log(a)
// a: 1,2,3,4,5,6,7,8,9}

9、删除数组元素:


{
let 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、条件判断:


{
let a,b;
a = b && 1;
// 相当于
if (b) {
a = 1
}

a = b || 1;
// 相当于
if (b) {
a = b;
} else {
a = 1;
}
}

12、判断IE:

var ie = /@cc_on !@/false;

js 小技巧_第1张图片
每天一段 js

你可能感兴趣的:(js 小技巧)