原文地址:http://linux.cn/article-1181-1.html 简洁写法JavaScript里我最喜欢的一种东西就是生成对象和数组的简写方法。在过去,如果你想创建一个对象,你需要这样: 1. var car= new Object(); 2. car.colour= 'red' ; 3. car.wheels= 4. car.hubcaps= 'spinning' ; 5. car.age= 下面的写法能够达到同样的效果: 1. var car= 2. colour: 'red' , 3. wheels:4, 4. hubcaps: 'spinning' , 5. age:4 6. } 简单多了,你不需要反复使用这个对象的名称。这样 car 就定义好了,也许你会遇到 invalidUserInSession的问题,这只有你在使用IE时会碰到,只要记住一点,不要右大括号前面写逗号,你就不会有麻烦。 另外一个十分方便的简写是针对数组的。传统的定义数组的方法是这样: 1. var moviesThatNeedBetterWrit new Array( 2. 'Transformers' , 'Transformers2' , 'Avatar' , 'IndianaJones4' 3. ); 简写版的是这样: 1. var moviesThatNeedBetterWrit 2. 'Transformers' , 'Transformers2' , 'Avatar' , 'IndianaJones4' 3. ]; 对于数组,这里有个问题,其实没有什么图组功能。但你会经常发现有人这样定义上面的 car ,就像这样 1. var car= new Array(); 2. car[ 'colour' ]= 'red' ; 3. car[ 'wheels' ]= 4. car[ 'hubcaps' ]= 'spinning' ; 5. car[ 'age' ]= 数组不是万能的;这样写不对,会让人困惑。图组实际上是对象的功能,人们混淆了这两个概念。(转载注,这里所称的图组通常称为关联数组、散列、hash,而且这种写法其实是合法的) 另外一个非常酷的简写方法是使用与三元条件符号。你不必写成下面的样子… 1. var direction; 2. if (x< 3. direction= 4. } else { 5. direction= 6. } … 1. var direction= 当条件为true 时取问号前面的值,否则取冒号后面的值。 |