cast - Casts a value in a specific type
(int) (double) (string) (bool)
This function is used to change the type of a variable into another one. The "cast" of an array into a double or an integer returns the number of elements in the array. The "cast" of an array into a string returns the JSON equivalent to this array.
Casting a double to an int might cause some precision issue as seen in this example:
amt = 64.24;
"The amount = "; amt; "\n";
amt *= 100.0;
"multiplied by 100:="; amt;"\n";
amt = (int)amt;
amt;"\n";
Which result in
The amount = 64.24
multiplied by 100:=6424
6423
The correct way to implement this is:
amt = 64.24;
"The amount = "; amt; "\n";
amt *= 100.0;
"multiplied by 100:="; amt;"\n";
amt = round(amt);
amt = (int)amt;
amt;"\n";
Note: In the followings examples, the _ between the { should be removed to make it work.
{_{a=undefined; (int) a; }} return 0 {_{a=null; (int) a; }} return 0 {_{a=[1,2,3]; (int) a; }} return 3 {_{a={x:1,y:2}; (int) a; }} return 2 {_{a=true; (int) a; }} return 1 {_{a=false; (int) a; }} return 0 {_{a=7.12345; (int) a; }} return 7 {_{a='7.1'; b = (int) a; b;}} return 7 {_{a='7'; b = (int) a; b;}} return 7 {_{a=7; b = (int) a; b;}} return 7 {_{a=7.12345; b = (int) a; b;}} return 7 {_{a=undefined; (float) a; }} return 0 {_{a=null; (float) a; }} return 0 {_{a=[1,2,3]; (float) a; }} return 3 {_{a={x:1,y:2}; (float) a; }} return 2 {_{a=true; (float) a; }} return 1 {_{a=false; (float) a; }} return 0 {_{a=7.12345; (float) a; }} return 7.12345 {_{a='7.1'; b = (float) a; b;}} return 7.1 {_{a='7'; b = (float) a; b;}} return 7 {_{a=7; b = (float) a; b;}} return 7 {_{a=7.12345; b = (float) a; b;}} return 7.12345 {_{a=undefined; (bool) a; }} return false {_{a=null; (bool) a; }} return false {_{a=[1,2,3]; (bool) a; }} return true {_{a=[]; (bool) a; }} return false {_{a={x:1,y:2}; (bool) a; }} return true {_{a={}; (bool) a; }} return false {_{a=true; (bool) a; }} return true {_{a=false; (bool) a; }} return false {_{a=7.12345; (bool) a; }} return true {_{a='7.1'; b = (bool) a; b;}} return true {_{a=''; b = (bool) a; b;}} return false {_{a='7'; b = (bool) a; b;}} return true {_{a='0'; b = (bool) a; b;}} return false {_{a=7; b = (bool) a; b;}} return true {_{a=7.12345; b = (bool) a; b;}} return true {_{a=undefined; (string) a; }} return undefined {_{a=null; (string) a; }} return {_{a=[1,2,3]; (string) a; }}",q(\[1,2,3\]),0); {_{a={x:1,y:2}; (string) a; }}",q(.*"x":1.*}),0); {_{a={x:1,y:2}; (string) a; }}",q(.*"y":2.*}),0); {_{a=true; (string) a; }} return true {_{a=false; (string) a; }} return false {_{a=7.12345; (string) a; }} return 7.12345 {_{a='7.1'; b = (string) a; b;}} return 7.1 {_{a='7'; b = (string) a; b;}} return 7 {_{a=7; b = (string) a; b;}} return 7 {_{a=7.12345; b = (string) a; b;}} return 7.12345
Written by Pierre Laplante and Caroline Laplante, <laplante@sednove.com>
Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin commodo. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis.
1.0 2014-09-09 21:24:14 laplante@sednove.com