14514f5e3Sopenharmony_ci/* 24514f5e3Sopenharmony_ci * Copyright (c) 2023 Huawei Device Co., Ltd. 34514f5e3Sopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License"); 44514f5e3Sopenharmony_ci * you may not use this file except in compliance with the License. 54514f5e3Sopenharmony_ci * You may obtain a copy of the License at 64514f5e3Sopenharmony_ci * 74514f5e3Sopenharmony_ci * http://www.apache.org/licenses/LICENSE-2.0 84514f5e3Sopenharmony_ci * 94514f5e3Sopenharmony_ci * Unless required by applicable law or agreed to in writing, software 104514f5e3Sopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS, 114514f5e3Sopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 124514f5e3Sopenharmony_ci * See the License for the specific language governing permissions and 134514f5e3Sopenharmony_ci * limitations under the License. 144514f5e3Sopenharmony_ci */ 154514f5e3Sopenharmony_ci 164514f5e3Sopenharmony_ci/* 174514f5e3Sopenharmony_ci * @tc.name:Number 184514f5e3Sopenharmony_ci * @tc.desc:test Number 194514f5e3Sopenharmony_ci * @tc.type: FUNC 204514f5e3Sopenharmony_ci * @tc.require: issueI8S2AX 214514f5e3Sopenharmony_ci */ 224514f5e3Sopenharmony_ci 234514f5e3Sopenharmony_ci// toFixed 244514f5e3Sopenharmony_cifunction testToFixed(a, b) { 254514f5e3Sopenharmony_ci print(a.toFixed(b)); 264514f5e3Sopenharmony_ci} 274514f5e3Sopenharmony_ci 284514f5e3Sopenharmony_citestToFixed(1.25, 1); 294514f5e3Sopenharmony_citestToPrecision(1.25, 2); 304514f5e3Sopenharmony_ciprint(0.000112356.toExponential()) 314514f5e3Sopenharmony_ciprint((-(true)).toPrecision(0x30, 'lib1-f1')) 324514f5e3Sopenharmony_citestToFixed(1111111111111111111111, 8); 334514f5e3Sopenharmony_citestToFixed(0.1, 1); 344514f5e3Sopenharmony_citestToFixed(0.1, 2); 354514f5e3Sopenharmony_citestToFixed(0.1, 3); 364514f5e3Sopenharmony_citestToFixed(0.01, 2); 374514f5e3Sopenharmony_citestToFixed(0.01, 3); 384514f5e3Sopenharmony_citestToFixed(0.01, 4); 394514f5e3Sopenharmony_citestToFixed(0.0000006, 7); 404514f5e3Sopenharmony_citestToFixed(0.00000006, 8); 414514f5e3Sopenharmony_citestToFixed(0.00000006, 9); 424514f5e3Sopenharmony_citestToFixed(0.00000006, 10); 434514f5e3Sopenharmony_citestToFixed(1.12, 0); 444514f5e3Sopenharmony_citestToFixed(12.12, 0); 454514f5e3Sopenharmony_citestToFixed(12.12, 1); 464514f5e3Sopenharmony_citestToFixed(12.122, 8); 474514f5e3Sopenharmony_citestToFixed(-1111111111111111111111, 8); 484514f5e3Sopenharmony_citestToFixed((-0.1), 1); 494514f5e3Sopenharmony_citestToFixed((-0.1), 2); 504514f5e3Sopenharmony_citestToFixed((-0.1), 3); 514514f5e3Sopenharmony_citestToFixed((-0.01), 2); 524514f5e3Sopenharmony_citestToFixed((-0.01), 3); 534514f5e3Sopenharmony_citestToFixed((-0.01), 4); 544514f5e3Sopenharmony_citestToFixed((-0.0000006), 7); 554514f5e3Sopenharmony_citestToFixed((-0.0000006), 8); 564514f5e3Sopenharmony_citestToFixed((-0.0000006), 9); 574514f5e3Sopenharmony_citestToFixed((-0.0000006), 10); 584514f5e3Sopenharmony_citestToFixed((-1.12), 0); 594514f5e3Sopenharmony_citestToFixed((-12.12), 0); 604514f5e3Sopenharmony_citestToFixed((-12.12), 1); 614514f5e3Sopenharmony_citestToFixed((-12.122), 8); 624514f5e3Sopenharmony_ci 634514f5e3Sopenharmony_ci// toExponential 644514f5e3Sopenharmony_cifunction testToExponential(a, b) { 654514f5e3Sopenharmony_ci print(a.toExponential(b)); 664514f5e3Sopenharmony_ci} 674514f5e3Sopenharmony_ci 684514f5e3Sopenharmony_cifunction testToExponentialP(a, b) { 694514f5e3Sopenharmony_ci print(a.toExponential(b)); 704514f5e3Sopenharmony_ci} 714514f5e3Sopenharmony_ci 724514f5e3Sopenharmony_citestToExponential(1); 734514f5e3Sopenharmony_citestToExponential(11); 744514f5e3Sopenharmony_citestToExponential(112); 754514f5e3Sopenharmony_citestToExponential(0.1); 764514f5e3Sopenharmony_citestToExponential(0.11); 774514f5e3Sopenharmony_citestToExponential(0.112); 784514f5e3Sopenharmony_citestToExponential(-1); 794514f5e3Sopenharmony_citestToExponential(-11); 804514f5e3Sopenharmony_citestToExponential(-112); 814514f5e3Sopenharmony_citestToExponential(-0.1); 824514f5e3Sopenharmony_citestToExponential(-0.11); 834514f5e3Sopenharmony_citestToExponential(-0.112); 844514f5e3Sopenharmony_citestToExponential(0); 854514f5e3Sopenharmony_citestToExponential(0.000112356); 864514f5e3Sopenharmony_citestToExponential(-0.000112356); 874514f5e3Sopenharmony_ci 884514f5e3Sopenharmony_citestToExponentialP((1), (1)); 894514f5e3Sopenharmony_citestToExponentialP((11), (1)); 904514f5e3Sopenharmony_citestToExponentialP((1), (2)); 914514f5e3Sopenharmony_citestToExponentialP((112), (2)); 924514f5e3Sopenharmony_citestToExponentialP((11), (3)); 934514f5e3Sopenharmony_citestToExponentialP((0.1), (1)); 944514f5e3Sopenharmony_citestToExponentialP((0.11), (1)); 954514f5e3Sopenharmony_citestToExponentialP((0.112), (1)); 964514f5e3Sopenharmony_citestToExponentialP((0.112), (2)); 974514f5e3Sopenharmony_citestToExponentialP((0.11), (3)); 984514f5e3Sopenharmony_citestToExponentialP((-11), (0)); 994514f5e3Sopenharmony_citestToExponentialP((-112), (0)); 1004514f5e3Sopenharmony_citestToExponentialP((-1), (1)); 1014514f5e3Sopenharmony_citestToExponentialP((-11), (1)); 1024514f5e3Sopenharmony_citestToExponentialP((-1), (2)); 1034514f5e3Sopenharmony_citestToExponentialP((-112), (2)); 1044514f5e3Sopenharmony_citestToExponentialP((-11), (3)); 1054514f5e3Sopenharmony_citestToExponentialP((-0.1), (1)); 1064514f5e3Sopenharmony_citestToExponentialP((-0.11), (1)); 1074514f5e3Sopenharmony_citestToExponentialP((-0.112), (1)); 1084514f5e3Sopenharmony_citestToExponentialP((-0.112), (2)); 1094514f5e3Sopenharmony_citestToExponentialP((-0.11), (3)); 1104514f5e3Sopenharmony_ci 1114514f5e3Sopenharmony_citestToExponentialP((0), (2)); 1124514f5e3Sopenharmony_citestToExponentialP((11.2356), (0)); 1134514f5e3Sopenharmony_citestToExponentialP((11.2356), (4)); 1144514f5e3Sopenharmony_citestToExponentialP((0.000112356), (4)); 1154514f5e3Sopenharmony_citestToExponentialP((-0.000112356), (4)); 1164514f5e3Sopenharmony_ci 1174514f5e3Sopenharmony_ci 1184514f5e3Sopenharmony_ci// toPrecision 1194514f5e3Sopenharmony_cifunction testToPrecision(a, b) { 1204514f5e3Sopenharmony_ci print(a.toPrecision(b)); 1214514f5e3Sopenharmony_ci} 1224514f5e3Sopenharmony_citestToPrecision((0.000555), (15)); 1234514f5e3Sopenharmony_citestToPrecision((0.000000555), (15)); 1244514f5e3Sopenharmony_citestToPrecision((-0.000000555), (15)); 1254514f5e3Sopenharmony_citestToPrecision((123456789), (1)); 1264514f5e3Sopenharmony_citestToPrecision((123456789), (9)); 1274514f5e3Sopenharmony_citestToPrecision((123456789), (8)); 1284514f5e3Sopenharmony_citestToPrecision((123456789), (7)); 1294514f5e3Sopenharmony_citestToPrecision((-123456789), (7)); 1304514f5e3Sopenharmony_citestToPrecision(Number(-.0000000012345), (2)); 1314514f5e3Sopenharmony_citestToPrecision(Number(-.000012345), (2)); 1324514f5e3Sopenharmony_citestToPrecision(Number(-.00012345), (2)); 1334514f5e3Sopenharmony_citestToPrecision(Number(-1.2345), (2)); 1344514f5e3Sopenharmony_citestToPrecision(Number(-12.345), (2)); 1354514f5e3Sopenharmony_citestToPrecision(Number(-1234.5), (2)); 1364514f5e3Sopenharmony_citestToPrecision(Number(-12345.67), (4)); 1374514f5e3Sopenharmony_ci 1384514f5e3Sopenharmony_ci 1394514f5e3Sopenharmony_ci// toString, Only Test InttoString 1404514f5e3Sopenharmony_cifunction testToString(a, b) { 1414514f5e3Sopenharmony_ci print(a.toString(b)); 1424514f5e3Sopenharmony_ci} 1434514f5e3Sopenharmony_ciprint((-0).toString()); 1444514f5e3Sopenharmony_ciprint((1).toString()); 1454514f5e3Sopenharmony_ciprint((-9).toString()); 1464514f5e3Sopenharmony_ciprint((1234567).toString()); 1474514f5e3Sopenharmony_ciprint((-1234567).toString()); 1484514f5e3Sopenharmony_ciprint((10000).toString()); 1494514f5e3Sopenharmony_ciprint((67345).toString()); 1504514f5e3Sopenharmony_ci 1514514f5e3Sopenharmony_citestToString((0), (16)); 1524514f5e3Sopenharmony_citestToString((9), (16)); 1534514f5e3Sopenharmony_citestToString((90), (16)); 1544514f5e3Sopenharmony_citestToString((-0), (16)); 1554514f5e3Sopenharmony_citestToString((-90), (16)); 1564514f5e3Sopenharmony_citestToString((10000007), (36)); 1574514f5e3Sopenharmony_citestToString((123456789), (32)); 1584514f5e3Sopenharmony_citestToString((-123456789), (32)); 1594514f5e3Sopenharmony_ci 1604514f5e3Sopenharmony_civar result = ""; 1614514f5e3Sopenharmony_civar num_1 = { valueOf: function() { result += "first"; return 1; } }; 1624514f5e3Sopenharmony_civar num_2 = { valueOf: function() { result += "second"; return 2; } }; 1634514f5e3Sopenharmony_ci// Compare the size of number 1 and number 2 1644514f5e3Sopenharmony_cinum_1 < num_2 1654514f5e3Sopenharmony_ciprint("firstsecond" == result); 1664514f5e3Sopenharmony_ci 1674514f5e3Sopenharmony_ciresult = ""; 1684514f5e3Sopenharmony_cinum_1 = { valueOf: function() { result += "first"; return 1; } }; 1694514f5e3Sopenharmony_ci// Compare the size of number 1 and 0 1704514f5e3Sopenharmony_cinum_1 > void(0); 1714514f5e3Sopenharmony_ciprint("first" == result); 1724514f5e3Sopenharmony_ci 1734514f5e3Sopenharmony_ciresult = ""; 1744514f5e3Sopenharmony_cinum_2 = { valueOf: function() { result += "second"; return 2; } }; 1754514f5e3Sopenharmony_ci// Compare the size of 0 and number 2 1764514f5e3Sopenharmony_civoid(0) > num_2; 1774514f5e3Sopenharmony_ciprint("second" == result); 178