现在的位置: 首页 > web前端 > 正文

javascript的7个技巧 1

2019年03月05日 web前端 ⁄ 共 1522字 ⁄ 字号 评论关闭

原文地址:http://linux.cn/article-1181-1.html

简洁写法

JavaScript里我最喜欢的一种东西就是生成对象和数组的简写方法。在过去,如果你想创建一个对象,你需要这样:

·········10········20········30········40········50········60········
1.var car= new Object();
2.car.colour= 'red';
3.car.wheels=
4;
4.car.hubcaps= 'spinning';
5.car.age=
4;

下面的写法能够达到同样的效果:

·········10········20········30········40········50········60········
1.var car=
{
2.colour:'red',
3.wheels:4,
4.hubcaps:'spinning',
5.age:4
6.}

简单多了,你不需要反复使用这个对象的名称。这样 car 就定义好了,也许你会遇到 invalidUserInSession的问题,这只有你在使用IE时会碰到,只要记住一点,不要右大括号前面写逗号,你就不会有麻烦。

另外一个十分方便的简写是针对数组的。传统的定义数组的方法是这样:

·········10········20········30········40········50········60········
1.var moviesThatNeedBetterWriters= new Array(
2.'Transformers','Transformers2','Avatar','IndianaJones4'
3.);

简写版的是这样:

·········10········20········30········40········50········60········
1.var moviesThatNeedBetterWriters=
[
2.'Transformers','Transformers2','Avatar','IndianaJones4'
3.];

对于数组,这里有个问题,其实没有什么图组功能。但你会经常发现有人这样定义上面的 car ,就像这样

·········10········20········30········40········50········60········
1.var car= new Array();
2.car['colour']= 'red';
3.car['wheels']=
4;
4.car['hubcaps']= 'spinning';
5.car['age']=
4;

数组不是万能的;这样写不对,会让人困惑。图组实际上是对象的功能,人们混淆了这两个概念。(转载注,这里所称的图组通常称为关联数组、散列、hash,而且这种写法其实是合法的)

另外一个非常酷的简写方法是使用与三元条件符号。你不必写成下面的样子…

·········10········20········30········40········50········60········
1.var direction;
2.if(x<
200){
3.direction=
1;
4.else {
5.direction=
-1;
6.}



你可以使用三元条件符号简化它:

·········10········20········30········40········50········60········
1.var direction=
x < 200 ? 1 : -1;

当条件为true 时取问号前面的值,否则取冒号后面的值。


抱歉!评论已关闭.