示例代码:
<!--[ /* 类似JavaScript的弱类型定义方式,也可以一次性定义多个 */ // 定义字节 var a=10b, b=10B; // 定义短整型 var c=10s, d=10S; // 定义整数 var e=10; // 定义长整型 var f=10l, g=10L; // 定义单精度浮点数 var h=10.5f, i=10.5F; // 定义双精度浮点数 var j=10.5d, k=10.5D; // 定义字符串 var l='test1', m="test2"; // 定义变长数组,类JSON定义方式 var n=['test1', 'test2', l, m]; // 定义哈希表,类JSON定义方式 var o={'k1': 'v1', "k2": "v2", l: m}; // 复合定义,支持使用已有变量运算后赋值 var p=a+b*10, q='value_'+c+d, r={'k1': 'v1', "k2": "v2", l: m, 'value': q}; // 不同作用域下的变量定义,可以定义同名的,但不能与外层作用域的变量冲突 if(a==10) { var xs=100; } else { var xs=101; // 下面的定义是错误的,因为变量a已在外层定义 var a=100; } ]-->
注意事项:
1、支持不同作用域下的变量定义,{ }各自持有自己的作用域,多路分支、循环都有作用域; 外层变量可以被内层变量使用,内层变量不可以被外层使用,与Java的变量作用域类似; 2、任何类型都可以进行逻辑运算(会转换成布尔类型); 默认约定是布尔的true、false,数字非0即真,对象非空即真;