WoW:API tonumber: Difference between revisions

From AddOn Studio
Jump to navigation Jump to search
m (Proper notation for optional argument. Added notes.)
m (Move page script moved page API tonumber to API tonumber without leaving a redirect)
 
(One intermediate revision by one other user not shown)
Line 1: Line 1:
Native Lua statement:
{{luaapi}}
Attempts to parse the number expressed in a string
num = tonumber(str[, radix])


;''Arguments''
== Arguments ==
:'''tonumber(arg[, base])'''
; str : String/number - this value will be converted to a numeric value.
::'''arg''' - this value will be converted to a numeric value.
; radix : Number - An optional argument specifies the base to interpret the numeral. The base may be any integer between 2 and 36, inclusive. In bases above 10, the letter `A´ (in either upper or lower case) represents 10, `B´ represents 11, and so forth, with `Z´ representing 35. In base 10 (the default), the number may have a decimal part, as well as an optional exponent part. In other bases, only unsigned integers are accepted.
::'''base''' - An optional argument specifies the base to interpret the numeral. The base may be any integer between 2 and 36, inclusive. In bases above 10, the letter `A´ (in either upper or lower case) represents 10, `B´ represents 11, and so forth, with `Z´ representing 35. In base 10 (the default), the number may have a decimal part, as well as an optional exponent part. In other bases, only unsigned integers are accepted.


----
== Returns ==
;''Returns''
; num : Number/nil - The argument as a numeric value or '''nil''' if the value cannot be converted.


:: The argument as a numeric value or '''nil''' if the value cannot be converted.
==Examples==
tonumber("123") -- Returns 123


----
tonumber("argqerg")  --Returns nil
;''Examples''


  tonumber("123")
  tonumber("argqerg", 36)  --Returns 4294967295
  --Returns 123


  tonumber("argqerg")
  tonumber("13", 8) --Returns 11
--Returns nil


tonumber("argqerg", 36) 
  tonumber ("D", 16) --Returns 13
--Returns 4294967295
 
tonumber("13", 8)
--Returns 11
 
  tonumber ("D", 16)
--Returns 13


== Notes ==
== Notes ==
* This function always converts ''arg'' into base 10 (decimal).
* This function always converts ''arg'' into the native number type.
:If you want to convert from one base to another, you'll have to do the math yourself.
: If you want to convert from one base to another, you'll have to do the math yourself.
* If ''base'' is less than 2 or greater than 36, an error will be thrown ("Base out of range").
* If ''base'' is less than 2 or greater than 36, an error will be thrown ("Base out of range").
* If ''arg'' cannot be converted from ''base'' to decimal, nil will be returned.
* If ''arg'' cannot be converted from ''base'' to decimal, nil will be returned.
{{LUA}}

Latest revision as of 04:47, 15 August 2023

WoW Lua

Attempts to parse the number expressed in a string

num = tonumber(str[, radix])

Arguments[edit]

str
String/number - this value will be converted to a numeric value.
radix
Number - An optional argument specifies the base to interpret the numeral. The base may be any integer between 2 and 36, inclusive. In bases above 10, the letter `A´ (in either upper or lower case) represents 10, `B´ represents 11, and so forth, with `Z´ representing 35. In base 10 (the default), the number may have a decimal part, as well as an optional exponent part. In other bases, only unsigned integers are accepted.

Returns[edit]

num
Number/nil - The argument as a numeric value or nil if the value cannot be converted.

Examples[edit]

tonumber("123") -- Returns 123
tonumber("argqerg")  --Returns nil
tonumber("argqerg", 36)  --Returns 4294967295
tonumber("13", 8) --Returns 11
tonumber ("D", 16) --Returns 13

Notes[edit]

  • This function always converts arg into the native number type.
If you want to convert from one base to another, you'll have to do the math yourself.
  • If base is less than 2 or greater than 36, an error will be thrown ("Base out of range").
  • If arg cannot be converted from base to decimal, nil will be returned.