详细介绍JS两种语法使用说明

开发
在JS两种语法中,首先碰到的就是环境的配置。以前学的Visual Studio2003,但并没有怎么用。所以有一个星期的时间基本是在用实践着.net 1.0,不知道Gates知道了,会不会有点郁闷。

后面跟任意的表达式,JS两种语法有明显不同。匹配时会先计算case后面的表达式再匹配。匹配时用的是 === 符号,而不是 == 符号,所以匹配过程不允许任何类型转换,default 放在最后只是逻辑上的需求,而它可以放在 switch 内的任何地方。

  1. var x = 1;  
  2.         switch (x + 1) {  
  3.             case '2':  
  4.                 alert('string:2');  
  5.                 break;  
  6.             default:  
  7.                 alert('default');  
  8.                 break;  
  9.             case 1 + 1:  
  10.                 alert('number:2');  
  11.                 break;  
  12.         }  
  13.         // result:  
  14.         // 'number:2' 

语法:for(variable in object)
其中 variable  允许任意的表达式,只要计算结果能作为赋值表达式的左侧,迭代对象属性名时并不保证任何特殊的迭代顺序,它也只迭代用户自定义的属性,而预定义的属性和方法是不会迭代的(比如:Math 的 cos 属性)数组本身是一种特殊的对象,当JS两种语法应用于数组时,迭代的是数组的索引。

  1. // 将对象 obj 的属性名复制到数组中  
  2.         var obj =  
  3.         {  
  4.             x: 1,  
  5.             y: new Date(),  
  6.             z: function() { }  
  7.         }  
  8.         var arr = new Array();  
  9.         var i = 0;  
  10.         for (arr[i++] in obj);  
  11.         alert(arr[0]);// 'x'  
  12.         alert(arr[1]);// 'y'  
  13.         alert(arr[2]);// 'z' 

当解析器遇到方法定义时,解析器对其进行解析并存储在一个以方法名命名的对象属性中。JS两种语法当这个方法是内嵌在其他方法中时,这个属性是 call 对象的属性(每个方法里都有一个call对象。

  1. var i = 1;  
  2.        single:  
  3.        {  
  4.            if (i == 1)  
  5.                break single;  
  6.            i++;  
  7.        }  
  8.        alert(i);  
  9.        out:  
  10.        while (i == 1 || i == 3) {  
  11.            while (true) {  
  12.                i++;  
  13.                alert(i);  
  14.                if (i == 2) {  
  15.                    continue;  
  16.                }  
  17.                else {  
  18.                    continue out;  
  19.                }  
  20.            }  
  21.            i++;  
  22.            alert(i);  
  23.        }  
  24.        alert(i);  
  25.        // result: 

而方法里的局部变量或内嵌方法均存储于此对象属性中),JS两种语法否则是全局对象的属性,方法和变量是在不同时间被解析定义的,方法是在解析的时候被定义的,而变量是在运行的时候被定义的。

责任编辑:chenqingxiang 来源: 博客园
相关推荐

2009-12-31 09:42:41

ADO对象模型

2009-12-18 15:11:50

ADO.NET类

2010-02-22 16:16:14

Python语法

2010-02-01 10:22:51

C++数据指针

2010-05-27 14:02:04

SVN使用说明

2020-06-28 09:03:26

Linuxtree命令目录

2011-06-15 13:07:10

JSP和JavaBea

2010-02-24 14:25:48

WCF地址

2010-01-13 09:48:34

Boost库

2009-12-29 14:28:58

ADO数据

2010-01-06 15:29:13

.NET Framew

2010-01-08 09:03:38

返回JSON数据

2010-01-05 15:48:51

JQuery缓存

2010-01-05 17:23:51

JSON建构

2010-01-07 18:19:01

JSON异步

2009-11-11 16:36:19

路由协议介绍

2009-10-27 09:49:38

无线接入技术

2010-01-08 14:27:45

JSON 帮助

2009-12-07 13:42:24

WCF框架

2010-05-26 18:20:59

SVN库
点赞
收藏

51CTO技术栈公众号