欢迎来到天天文库
浏览记录
ID:63496284
大小:14.66 KB
页数:8页
时间:2021-08-26
《JavaScript必看小技巧(必看)_》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、JavaScript必看小技巧(必看)_在这篇文章中将给大家分享有关于JavaScript的小技巧。这些小技巧可能在你的实际工作中或许能关心你解决一些问题。用法!!操作符转换布尔值有时候我们需要对一个变量查检其是否存在或者检查值是否有一个有效值,假如存在就返回true值。为了做这样的验证,我们可以用法!!操作符来实现是特别的便利与简洁。对于变量可以用法!!variable做检测,只要变量的值为:0、null、""、undefined或者NaN都将返回的是false,反之返回的是true。比如下面的
2、示例:functionAccount(cash){this.cash=cash;this.hasMoney=!!cash;}varaccount=newAccount(100.50);console.log(account.cash);//100.50console.log(account.hasMoney);//truevaremptyAccount=newAccount(0);console.log(emptyAccount.cash);//0console.log(emptyAccount.
3、hasMoney);//false在这个示例中,只要account.cash的值大于0,那么account.hasMoney返回的值就是true。用法+将字符串转换成数字这个技巧特别有用,其特别简洁,可以交字符串数据转换成数字,不过其只适合用于字符串数据,否则将返回NaN,比如下面的示例:functiontoNumber(strNumber){return+strNumber;}console.log(toNumber("1234"));//1234console.log(toNumber("AC
4、B"));//NaN这个也适用于Date,在本例中,它将返回的是时间戳数字:console.log(+newDate())//1461288164385并条件符假如你有一段这样的代码:if(conected){login();}你也可以将变量简写,并且用法和函数连接在一起,比如上面的示例,可以简写成这样:conectedlogin();假如一些属性或函数存在于一个对象中,你也可以这样做检测,如下面的代码所示:useruser.login();用法
5、
6、运算符在ES6中有默认参数这一特性。为了在老版本
7、的扫瞄器中模拟这一特性,可以用法
8、
9、操作符,并且将将默认值当做其次个参数传入。假如第一个参数返回的值为false,那么其次个值将会认为是一个默认值。如下面这个示例:functionUser(name,age){this.name=name
10、
11、"OliverQueen";this.age=age
12、
13、27;}varuser1=newUser();console.log(user1.name);//OliverQueenconsole.log(user1.age);//27varuser2=newUse
14、r("BarryAllen",25);console.log(user2.name);//BarryAllenconsole.log(user2.age);//25在循环中缓存array.length这个技巧很简洁,这个在处理一个很大的数组循环时,对性能影响将是特别大的。基本上,大家都会写一个这样的同步迭代的数组:for(vari=0;iarray.length;i++){console.log(array[i]);}假如是一个小型数组,这样做很好,假如你要处理的是一个大的数组,这段代码在每次迭代
15、都将会重新计算数组的大小,这将会导致一些延误。为了避开这种现象消失,可以将array.length做一个缓存:varlength=array.length;for(vari=0;ilength;i++){console.log(array[i]);}你也可以写在这样:for(vari=0,length=array.length;ilength;i++){console.log(array[i]);}检测对象中属性当你需要检测一些属性是否存在,避开运行未定义的函数或属性时,这个小技巧就显得很有用。假
16、如你准备定些一些跨兼容的扫瞄器代码,你也可能会用到这个小技巧。例如,你想用法document.querySelector()来选择一个id,并且让它能兼容IE6扫瞄器,但是在IE6扫瞄器中这个函数是不存在的,那么用法这个操作符来检测这个函数是否存在就显得特别的有用,如下面的示例:if('querySelector'indocument){document.querySelector("#id");}else{document.getElementById("id");}在这个示例中
此文档下载收益归作者所有