有用的Javascript技巧

版权声明:本文为博主原创文章,未经博主允许不得转载。    https://blog.csdn.net/duyiwuerluozhixiang/article/details/71954957
1.使用!!将变量转换成布尔类型 
有时我们需要检查一些变量是否存在,或者他是否具有有效值,从而将他们的值视为true。对于做这样的检查,你可以使用!!(双重否定运算符),他能自动的将任何类型的数据转换为布尔值,只有这样变量才会返回false:0,null,”“,undefined或NaN,其他的值都返回true。 
2.使用+将变量装换成数字 
这个装换超级简单,但她只适用于数字字符串,不然就会返回NaN(不是数字)。看看这个例子: 
function toNumber(strNumber){ 
return +strNumber; 

console.log(“1234”);//1234 
console.log(“ABCD”);//NaN 
这个装换操作也可以作用于date,在这钟情况下,它将返回时间戳: 
console.log(+ new Date());//1462548741 
3.使用 || 设置默认值 
在ES6中有默认参数这个功能。为了在旧版浏览器中模拟此功能,你可以使用 || (or运算符),并把默认值作为它的第二个参数。如果第一参数返回false,那么第二个参数将会作为默认值返回。看下面的例子: 
function User(name,age){ 
this.name = name || “David”; 
this.age = age || “25”; 

var user1 = new User(); 
console.log(user1.name);//David 
console.log(user1.age);//25 
var user2= new User(“Barry”,”10”): 
console.log(user2.name);//Barry 
console.log(user2.age);//10 
4.在循环中缓存array.length 
var length = array.length; 
for(var i = 0; i < length; i++){ 
console.log(array[i]); 

为了更简洁,可以这么写 
for(var i = 0,length = array.length; i < length; i++){ 
console.log(array[i]); 

5.获取数组的最后一个元素 
Array.prototype.slice(begin,end)可以用来裁剪数组。但是如果没有设置结束参数的话,该函数会自动将end设置为数组长度值。如果你将begin设置为一个负数的话,你就能从数组中获取到倒数的元素。 
var array = [1,2,3,4,5]; 
console.log(array.slice(-1));//[5] 
console.log(array.slice(-2));//[4,5] 
console.log(array.slice(-3));//[3,4,5] 
6.数组截断 
这个技术可以锁定数组的大小,这对于删除数组中固定数量的元素是非常有用的。例如:一个数组的包含10个元素,但是你只想取出前五个值,则可以通过设置array.length = 5 来截断数组。例子: 
var array = [1,2,3,4,5,6]; 
console.log(array.length);//6 
array.length = 3; 
console.log(array.length);//3 
console.log(array);//[1,2,3] 
7.全部替换 
var str = “abacc”; 
console.log(str.replace(/a/”1”));//1bacc 
console.log(str.replace(/a/g,”1”));//1b1cc 
8.合并数组 
如果你需要合并两个数组,可以这样做: 
var arr1 = [1.2]; 
var arr2 = [3,4]; 
console.log(arr1.push.apply(arr1,arr2));//[1,2,3,4] 
9.把NodeList转换成数组 
只需用这个函数:[].slice.call(elements); 
10.对数组元素进行洗牌 
var list = [1,2,3]; 
console.log(list.sort(function(){ 
return Math.random - 0.5 
}));//[2,1,3]
--------------------- 
作者:独一无二147 
来源:CSDN 
原文:https://blog.csdn.net/duyiwuerluozhixiang/article/details/71954957 
版权声明:本文为博主原创文章,转载请附上博文链接!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值