1function Add(a, b, c) 2{ 3 Stdout("Test Add ", a, b, c); 4 a = a + b; 5 c = a + c; 6 return a, c; 7} 8 9Stdout("Test Add-int ", Add(100, 200, 10.0)); 10Stdout("Test Add-float ", Add(100.0, 200.0, 10)); 11// 失败 12#Stdout("Test Add-string ", Add(100.0, 200.0, "1000")); 13Stdout("Test Add-string ", Add("100.0 + ", 200.0, "++++")); 14 15function Sub(a, b, c) 16{ 17 Stdout("Test Sub ", a, b, c); 18 a = a - b; 19 c = a - c; 20 return a, c; 21} 22 23Stdout("Test Sub-int ", Sub(100, 200, 10.0)); 24Stdout("Test Sub-float ", Sub(100.0, 200.0, 10)); 25 26function Mul(a, b, c) 27{ 28 Stdout("Test Mul ", a, b, c); 29 a = a * b; 30 c = a * c; 31 return a, c; 32} 33 34Stdout("Test Mul-int ", Mul(100, 200, 10.0)); 35Stdout("Test Mul-float ", Mul(100.0, 200.0, 10)); 36 37function Div(a, b, c) 38{ 39 Stdout("Test Div ", a, b, c); 40 a = a / b; 41 c = a / c; 42 return a, c; 43} 44 45Stdout("Test Div-int ", Div(100, 200, 10.0)); 46Stdout("Test Div-float ", Div(100.0, 200.0, 10)); 47 48function EQ(a, b, c) 49{ 50 Stdout("Test EQ ", a, b, c); 51 d = a == b; 52 e = a == c; 53 return d, e; 54} 55 56Stdout("Test EQ-int ", EQ(100, 100, 10.0)); 57Stdout("Test EQ-float ", EQ(100.1, 200.1, 200)); 58Stdout("Test EQ-float ", EQ(100.1, 200, 200)); 59// string 只支持和str比较 60#Stdout("Test EQ-string ", EQ("200.0", 200.0, 10)); 61Stdout("Test EQ-string ", EQ("200.0", "200.0", "10")); 62 63function NE(a, b, c) 64{ 65 Stdout("Test NE ", a, b, c); 66 d = a != b; 67 e = a != c; 68 return d, e; 69} 70 71Stdout("Test NE-int ", NE(100, 100, 10.0)); 72Stdout("Test NE-float ", NE(100.1, 200.1, 200)); 73Stdout("Test NE-float ", NE(100.1, 200, 200)); 74// string 只支持和str比较 75#Stdout("Test NE-string ", NE("200.0", 200.0, 10)); 76Stdout("Test NE-string ", NE("200.0", "200.0", "10")); 77 78Stdout("Test NE-int ", NE(100, 100, 10.0)); 79Stdout("Test NE-float ", NE(100.1, 200.1, 200)); 80Stdout("Test NE-float ", NE(100.1, 200, 200)); 81// string 只支持和str比较 82#Stdout("Test NE-string ", NE("200.0", 200.0, 10)); 83Stdout("Test NE-string ", NE("200.0", "200.0", "10")); 84 85function GT(a, b, c) 86{ 87 Stdout("Test GT ", a, b, c); 88 d = a > b; 89 e = a > c; 90 return d, e; 91} 92 93Stdout("Test GT-int ", GT(100, 100, 10.0)); 94Stdout("Test GT-float ", GT(100.1, 200.1, 200)); 95Stdout("Test GT-float ", GT(100.1, 200, 200)); 96// string 只支持和str比较 97#Stdout("Test GT-string ", GT("200.0", 200.0, 10)); 98Stdout("Test GT-string ", GT("200.0", "200.0", "10")); 99 100function GE(a, b, c) 101{ 102 Stdout("Test GE ", a, b, c); 103 d = a >= b; 104 e = a >= c; 105 return d, e; 106} 107 108Stdout("Test GE-int ", GE(100, 100, 10.0)); 109Stdout("Test GE-float ", GE(100.1, 200.1, 200)); 110Stdout("Test GE-float ", GE(100.1, 200, 200)); 111// string 只支持和str比较 112#Stdout("Test GE-string ", GE("200.0", 200.0, 10)); 113Stdout("Test GE-string ", GE("200.0", "200.0", "10")); 114 115function LT(a, b, c) 116{ 117 Stdout("Test LT ", a, b, c); 118 d = a < b; 119 e = a < c; 120 return d, e; 121} 122 123Stdout("Test LT-int ", LT(100, 100, 10.0)); 124Stdout("Test LT-float ", LT(100.1, 200.1, 200)); 125Stdout("Test LT-float ", LT(100.1, 200, 200)); 126// string 只支持和str比较 127#Stdout("Test LT-string ", LT("200.0", 200.0, 10)); 128Stdout("Test LT-string ", LT("200.0", "200.0", "10")); 129 130function LE(a, b, c) 131{ 132 Stdout("Test LE ", a, b, c); 133 d = a <= b; 134 e = a <= c; 135 return d, e; 136} 137 138Stdout("Test LE-int ", LE(100, 100, 10.0)); 139Stdout("Test LE-float ", LE(100.1, 200.1, 200)); 140Stdout("Test LE-float ", LE(100.1, 200, 200)); 141// string 只支持和str比较 142#Stdout("Test LE-string ", LE("200.0", 200.0, 10)); 143Stdout("Test LE-string ", LE("200.0", "200.0", "10")); 144 145// 测试if语句 146function TestIf(a, b, c) 147{ 148 if (a > b) { 149 return a, c; 150 } else { 151 return b, c; 152 } 153} 154 155Stdout("TestIf ", TestIf(100, 10, 10.0)); 156Stdout("TestIf ", TestIf(200, 100, 10.0)); 157Stdout("TestIf ", TestIf(100, 10 + 200, 10.0)); 158 159// 测试for 160function TestFor(a, b, c) 161{ 162 for (i = 0; i < a; i = i + 1) { 163 Stdout("TestFor i = ", i); 164 if (i > b) { 165 Stdout("TestFor return"); 166 return i; 167 } 168 if (i == b) { 169 Stdout("TestFor continue"); 170 continue; 171 } 172 if (i == c) { 173 Stdout("TestFor break"); 174 break; 175 } 176 } 177 return c; 178} 179 180Stdout("TestFor ", TestFor(10, 5, 10)); 181Stdout("TestFor ", TestFor(10, 5, 10)); 182Stdout("TestFor ", TestFor(10, 5, 3)); 183 184// 测试while 循环 185function TestWhile(a, b, c) 186{ 187 i = 0; 188 while (i < a) { 189 Stdout("TestWhile i = ", i); 190 if (i > b) { 191 Stdout("TestWhile return"); 192 return i; 193 } 194 if (i == b) { 195 Stdout("TestWhile continue i= ", i); 196 i = i + 2; 197 continue; 198 } 199 if (i == c) { 200 Stdout("TestWhile break"); 201 break; 202 } 203 i = i + 1; 204 } 205 return c; 206} 207 208Stdout("TestWhile ", TestWhile(10, 5, 10)); 209Stdout("TestWhile ", TestWhile(10, 5, 10)); 210Stdout("TestWhile ", TestWhile(10, 5, 3));