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 78function NE(a, b, c) 79{ 80 Stdout("Test NE ", a, b, c); 81 d = a != b; 82 e = a != c; 83 return d, e; 84} 85 86Stdout("Test NE-int ", NE(100, 100, 10.0)); 87Stdout("Test NE-float ", NE(100.1, 200.1, 200)); 88Stdout("Test NE-float ", NE(100.1, 200, 200)); 89// string 只支持和str比较 90#Stdout("Test NE-string ", NE("200.0", 200.0, 10)); 91Stdout("Test NE-string ", NE("200.0", "200.0", "10")); 92 93function GT(a, b, c) 94{ 95 Stdout("Test GT ", a, b, c); 96 d = a > b; 97 e = a > c; 98 return d, e; 99} 100 101Stdout("Test GT-int ", GT(100, 100, 10.0)); 102Stdout("Test GT-float ", GT(100.1, 200.1, 200)); 103Stdout("Test GT-float ", GT(100.1, 200, 200)); 104// string 只支持和str比较 105#Stdout("Test GT-string ", GT("200.0", 200.0, 10)); 106Stdout("Test GT-string ", GT("200.0", "200.0", "10")); 107 108function GE(a, b, c) 109{ 110 Stdout("Test GE ", a, b, c); 111 d = a >= b; 112 e = a >= c; 113 return d, e; 114} 115 116Stdout("Test GE-int ", GE(100, 100, 10.0)); 117Stdout("Test GE-float ", GE(100.1, 200.1, 200)); 118Stdout("Test GE-float ", GE(100.1, 200, 200)); 119// string 只支持和str比较 120#Stdout("Test GE-string ", GE("200.0", 200.0, 10)); 121Stdout("Test GE-string ", GE("200.0", "200.0", "10")); 122 123function LT(a, b, c) 124{ 125 Stdout("Test LT ", a, b, c); 126 d = a < b; 127 e = a < c; 128 return d, e; 129} 130 131Stdout("Test LT-int ", LT(100, 100, 10.0)); 132Stdout("Test LT-float ", LT(100.1, 200.1, 200)); 133Stdout("Test LT-float ", LT(100.1, 200, 200)); 134// string 只支持和str比较 135#Stdout("Test LT-string ", LT("200.0", 200.0, 10)); 136Stdout("Test LT-string ", LT("200.0", "200.0", "10")); 137 138function LE(a, b, c) 139{ 140 Stdout("Test LE ", a, b, c); 141 d = a <= b; 142 e = a <= c; 143 return d, e; 144} 145 146Stdout("Test LE-int ", LE(100, 100, 10.0)); 147Stdout("Test LE-float ", LE(100.1, 200.1, 200)); 148Stdout("Test LE-float ", LE(100.1, 200, 200)); 149// string 只支持和str比较 150#Stdout("Test LE-string ", LE("200.0", 200.0, 10)); 151Stdout("Test LE-string ", LE("200.0", "200.0", "10")); 152 153// 测试if语句 154function TestIf(a, b, c) 155{ 156 if (a > b) { 157 return a, c; 158 } else { 159 return b, c; 160 } 161} 162 163Stdout("TestIf ", TestIf(100, 10, 10.0)); 164Stdout("TestIf ", TestIf(200, 100, 10.0)); 165Stdout("TestIf ", TestIf(100, 10 + 200, 10.0)); 166 167// 测试for 168function TestFor(a, b, c) 169{ 170 for (i = 0; i < a; i = i + 1) { 171 Stdout("TestFor i = ", i); 172 if (i > b) { 173 Stdout("TestFor return"); 174 return i; 175 } 176 if (i == b) { 177 Stdout("TestFor continue"); 178 continue; 179 } 180 if (i == c) { 181 Stdout("TestFor break"); 182 break; 183 } 184 } 185 return c; 186} 187 188Stdout("TestFor ", TestFor(10, 5, 10)); 189Stdout("TestFor ", TestFor(10, 5, 10)); 190Stdout("TestFor ", TestFor(10, 5, 3)); 191 192// 测试while 循环 193function TestWhile(a, b, c) 194{ 195 i = 0; 196 while (i < a) { 197 Stdout("TestWhile i = ", i); 198 if (i > b) { 199 Stdout("TestWhile return"); 200 return i; 201 } 202 if (i == b) { 203 Stdout("TestWhile continue i= ", i); 204 i = i + 2; 205 continue; 206 } 207 if (i == c) { 208 Stdout("TestWhile break"); 209 break; 210 } 211 i = i + 1; 212 } 213 return c; 214} 215 216Stdout("TestWhile ", TestWhile(10, 5, 10)); 217Stdout("TestWhile ", TestWhile(10, 5, 10)); 218Stdout("TestWhile ", TestWhile(10, 5, 3));