取整
var a = ~~2.33 //这种方法还可以将字符串转换成数字类型 var b= 2.33 | 0 var c= 2.33 >> 0 console.log('var a , b, c >> ',a, b, c);
实现金钱格式化
var test1 = '9888888' var format = test1.replace(/\B(?=(\d{3})+(?!\d))/g, ',') console.log('test1 =',format) // 9,888,888
字符串的拼接,减少页面的重绘
var array = []; for(var i = 0; i < 10000; i++){ array[i] = "<input type='button' value='a'>"; } document.getElementById("one").innerHTML = array.join("");
最佳的让两个整数交换数值
var a = 0; var b = 99; a ^= b; b ^= a; a ^= b; console.log ('var a ,b = ',a,b);
实现标准JSON的深拷贝
var a = { a: 1, b: { c: 1, d: 2 } } var b=JSON.parse(JSON.stringify(a))
直接一行代码去重
console.log('[1, "好的", "好的", 2, 1, 1, 3]=',[...new Set([1, "好的", "好的", 2, 1, 1, 3])]);
取最大值最小值
var numbers = [5, 458 , 120 , -215 , 228 , 400 , 122205, -85411]; var maxInNumbers = Math.max.apply(Math, numbers); var minInNumbers = Math.min.apply(Math, numbers);
js中所有 非零 数字作布尔运算时,都会返回 true, 反之返回 false
if (value) { //do something... }
for循环优化
for (var i = 0, len = data.length; i < len ; i++) { console.log(data[i]) };
每个对象都存在的函数,使用原型节省内存和对象创建时间
function Shopping_Cart(product,price){ this.product=product; this.price=price; } Shopping_Cart.prototype = { play:function(){ console.log("产品:"+this.product+',价格:'+this.price); } } var user1 = new Shopping_Cart('鞋子','800'); var user2 = new Shopping_Cart('外套','900'); user1.play(); user2.play();