javascript1.7新语法(2)

来源:未知 责任编辑:责任编辑 发表时间:2013-11-15 19:50 点击:

4.数组领悟。

这是来自python的语法,现在引入js可以极大的提高生产力。

语法如下array=[value for each (variable in values) condition ];

var a=[1,3,6,13,0,94,222];

A.

1 for each(i in a){ if(i){console.log(i)}} //类似for in的古老用法。

B.

1  var b=[i*2 for each(i in a) if(i%3===0)];// [6,12,0,444] 得到一个新数组

 

C.

 1 var b=(i*2 for each(i in a) if(i%3===0));//获得一个生成器。

 2

 3

 4 try{

 5

 6 while(b){

 7

 8 console.log(b.next());// 6 12 0 444

 9

10 }

11

12

13 }catch(e){};

 

D. 处理对象

 

1 for each(let [j,k] in new Iterator(a)){

2

3

4 console.log(j +' '+k)

5

6

7 };

 

5.结构赋值

这个非常简单

 

1  var [a,b]=[1,2,3,4]; //a=1 b=2

2  var {width:px,height:pec}={width:80,height:'50%'};//px 80 pec 50%

 

 

6.let关键字 创建块级作用域

在现在使用广泛的javascript1.5是没有块级作用域的。用var定义变量,由于解析器变量提升的关系经常不小心就踩到地雷,现在福音来了!

1 void function (){

2     if(true){

3         let a=1;

4         console.log(a);//1

5     }

6     console.log(a);//undefined

7 }()

 

在看看var

1 void function (){

2     if(true){

3         var a=1;

4         console.log(a);//1

5     }

6     console.log(a);//1

7 }()

 

 

 

摘自 菲尼克斯

发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
用户名: 验证码:点击我更换图片
最新评论 更多>>

推荐热点

  • Gb2312转utf-8编码的方法(vbs+js)
  • 如何使用Ajax技术开发Web应用程序(1)
  • js跳转路径问题
  • JavaScript模仿桌面窗口
  • 用js检测两个线段是否相交
  • 我知道的JavaScript -- 设计模式(桥接)应用之 – 验证器
  • 运用JavaScript构建你的第一个Metro式应用程序(on Windows
  • 我是如何去了解jquery的(六),案例之幻灯片轮换
  • Jquery封装幻灯片效果
网站首页 - 友情链接 - 网站地图 - TAG标签 - RSS订阅 - 内容搜索
Copyright © 2008-2015 计算机技术学习交流网. 版权所有

豫ICP备11007008号-1