HTML::O...::Number(3)
β¨ HTML::Object::DOM::Number β the HTML::O...::Number(3) moment β¨
Okay bestie, this is the User Contributed Perl Documentation for HTML::Object::DOM::Number, and yes, the manual name HTML::O...::Number(3) is getting folded in right here at the top like a little crown. π
πΈ NAME πΈ
HTML::Object::DOM::Number β HTML Object DOM Number.
β¨ SYNOPSIS β¨
The whole entrance, in code:
use HTML::Object::DOM::Number;
my $this = HTML::Object::DOM::Number->new ||
die( HTML::Object::DOM::Number->error, "\n" );
π VERSION π
v0.2.0 β thatβs the version, periodt. π
π¦ DESCRIPTION π¦
This interface represents and manipulates numbers like 37 or -9.25 β literally just numbers doing their little number thing. It inherits from Module::Generic::Number.
π PROPERTIES π
These are the static-ish properties, and they are iconic. Read on, bestie.
π EPSILON π
The smallest interval between two representable numbers β the tiny little gap, the micro-vibe. The EPSILON property has a value of approximately 2.22044604925031e-16, or 2^-52.
You do not have to create a HTML::Object::DOM::Number object to access this static property (use HTML::Object::DOM::Number->EPSILON).
Example:
my $result = abs(0.2 - 0.3 + 0.1);
say $result;
# expected output: 2.77555756156289e-17
say $result < HTML::Object::DOM::Number->EPSILON;
# expected output: 1 (i.e. true)
if( !defined( HTML::Object::DOM::Number->EPSILON ) )
{
HTML::Object::DOM::Number->EPSILON = POSIX::pow(2, -52);
}
See also Mozilla documentation: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/EPSILON β she has receipts. π
π MAX_SAFE_INTEGER π
This represents the maximum safe integer in JavaScript i.e. (2^53 - 1).
However, under perl, it does not work the same way.
Example:
Under JavaScript
const x = Number.MAX_SAFE_INTEGER + 1;
const y = Number.MAX_SAFE_INTEGER + 2;
console.log(Number.MAX_SAFE_INTEGER);
// expected output: 9007199254740991
console.log(x);
// expected output: 9007199254740992
console.log(x === y);
// expected output: true
However, under perl, $x == $y would be false of course.
See also Mozilla documentation: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/MAX_SAFE_INTEGER
π MAX_VALUE π
This represents the maximum numeric value representable in JavaScript.
The MAX_VALUE property has a value of approximately 1.79E+308, or 2^64. Values larger than MAX_VALUE are represented as Infinity.
Because MAX_VALUE is a static property of HTML::Object::DOM::Number, you always use it as HTML::Object::DOM::Number-"MAX_VALUE>, rather than as a property of a HTML::Object::DOM::Number object you created.
Example:
if( $num1 * $num2 <= HTML::Object::DOM::Number->MAX_VALUE )
{
func1();
}
else
{
func2();
}
See also Mozilla documentation: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/MAX_VALUE
π MIN_SAFE_INTEGER π
This represents the minimum safe integer in JavaScript (-(2^53 - 1)).
Because MIN_SAFE_INTEGER is a static property of HTML::Object::DOM::Number, you can use it as HTML::Object::DOM::Number-"MIN_SAFE_INTEGER>, rather than as a property of a HTML::Object::DOM::Number object you created.
Example:
HTML::Object::DOM::Number->MIN_SAFE_INTEGER # -9007199254740991
-(POSIX::pow(2, 53) - 1) # -9007199254740991
See also Mozilla documentation: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/MIN_SAFE_INTEGER
π MIN_VALUE π
The smallest positive representable number β that is, the positive number closest to zero (without actually being zero). Tiny but fierce. π§
Example:
if( $num1 / $num2 >= HTML::Object::DOM::Number->MIN_VALUE )
{
func1();
}
else
{
func2();
}
See also Mozilla documentation: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/MIN_VALUE
π NEGATIVE_INFINITY π
Special value representing negative infinity. Returned on overflow.
Example:
my $smallNumber = (-HTML::Object::DOM::Number->MAX_VALUE) * 2;
if( $smallNumber == HTML::Object::DOM::Number->NEGATIVE_INFINITY )
{
$smallNumber = returnFinite();
}
See also Mozilla documentation: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/NEGATIVE_INFINITY
π NaN π
Special "Not a Number" value.
This is actually a value exported by POSIX.
Example:
sub sanitise
{
my $x = shift( @_ );
if( isNaN($x) )
{
return( HTML::Object::DOM::Number->NaN );
}
return($x);
}
See also Mozilla documentation: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/NaN
π POSITIVE_INFINITY π
Special value representing infinity. Returned on overflow.
Example:
my $bigNumber = HTML::Object::DOM::Number->MAX_VALUE * 2;
if( $bigNumber == HTML::Object::DOM::Number->POSITIVE_INFINITY )
{
$bigNumber = returnFinite();
}
See also Mozilla documentation: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/POSITIVE_INFINITY
π₯ METHODS π₯
Inherits methods from its parent Module::Generic::Number β so the method genes are strong. π
π isFinite π
Determine whether the passed value is a finite number.
Example:
HTML::Object::DOM::Number->isFinite($value)
HTML::Object::DOM::Number->isFinite(Infinity); # false
HTML::Object::DOM::Number->isFinite(NaN); # false
HTML::Object::DOM::Number->isFinite(-Infinity); # false
HTML::Object::DOM::Number->isFinite(0); # true
HTML::Object::DOM::Number->isFinite(2e64); # true
HTML::Object::DOM::Number->isFinite('0'); # false, would've been true with
# global isFinite('0')
HTML::Object::DOM::Number->isFinite(undef); # false, would've been true with
# global isFinite(undef)
See also Mozilla documentation: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/isFinite
π isInteger π
Determine whether the passed value is an integer.
Example:
HTML::Object::DOM::Number->isInteger(value)
HTML::Object::DOM::Number->isInteger(0); # true
HTML::Object::DOM::Number->isInteger(1); # true
HTML::Object::DOM::Number->isInteger(-100000); # true
HTML::Object::DOM::Number->isInteger(99999999999999999999999); # true
HTML::Object::DOM::Number->isInteger(0.1); # false
HTML::Object::DOM::Number->isInteger(Math->PI); # false
HTML::Object::DOM::Number->isInteger(NaN); # false
HTML::Object::DOM::Number->isInteger(Infinity); # false
HTML::Object::DOM::Number->isInteger(-Infinity); # false
HTML::Object::DOM::Number->isInteger('10'); # false
HTML::Object::DOM::Number->isInteger(true); # false
HTML::Object::DOM::Number->isInteger(false); # false
HTML::Object::DOM::Number->isInteger([1]); # false
HTML::Object::DOM::Number->isInteger(5.0); # true
HTML::Object::DOM::Number->isInteger(5.000000000000001); # false
HTML::Object::DOM::Number->isInteger(5.0000000000000001); # true
See also Mozilla documentation: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/isInteger
π isNaN π
Determine whether the passed value is NaN.
Example:
HTML::Object::DOM::Number->isNaN(value)
HTML::Object::DOM::Number->isNaN(NaN); # true
HTML::Object::DOM::Number->isNaN(HTML::Object::DOM::Number->NaN); # true
HTML::Object::DOM::Number->isNaN(0 / 0); # true
# e->g. these would have been true with global isNaN()
HTML::Object::DOM::Number->isNaN('NaN'); # false
HTML::Object::DOM::Number->isNaN(undefined); # false
HTML::Object::DOM::Number->isNaN({}); # false
HTML::Object::DOM::Number->isNaN('blabla'); # false
# These all return false
HTML::Object::DOM::Number->isNaN(true);
HTML::Object::DOM::Number->isNaN(undef);
HTML::Object::DOM::Number->isNaN(37);
HTML::Object::DOM::Number->isNaN('37');
HTML::Object::DOM::Number->isNaN('37.37');
HTML::Object::DOM::Number->isNaN('');
HTML::Object::DOM::Number->isNaN(' ');
See also Mozilla documentation: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/isNaN
π isSafeInteger π
Determine whether the passed value is a safe integer (number between -(2^53 - 1) and 2^53 - 1).
Example:
HTML::Object::DOM::Number->isSafeInteger(3); # true
HTML::Object::DOM::Number->isSafeInteger(POSIX::pow(2, 53)); # false
HTML::Object::DOM::Number->isSafeInteger(POSIX::pow(2, 53) - 1); # true
HTML::Object::DOM::Number->isSafeInteger(NaN); # false
HTML::Object::DOM::Number->isSafeInteger(Infinity); # false
HTML::Object::DOM::Number->isSafeInteger('3'); # false
HTML::Object::DOM::Number->isSafeInteger(3.1); # false
HTML::Object::DOM::Number->isSafeInteger(3.0); # true
See also Mozilla documentation: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/isSafeInteger
π parseFloat π
Provided with a value and this will return a new HTML::Object::DOM::Number object.
See also Mozilla documentation: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/parseFloat
π parseInt π
Provided with a value and this will return a new HTML::Object::DOM::Number object.
See also Mozilla documentation: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/parseInt
π AUTHOR π
Jacques Deguest <jack@deguest.jp> β yes, thatβs the author line, bestie.
π SEE ALSO π
Mozilla documentation: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number β and Machine::Epsilon.
π COPYRIGHT & LICENSE π
Copyright(c) 2021 DEGUEST Pte. Ltd.
All rights reserved
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
π Footer sign-off: perl v5.42.2 Β· 2026-02-15 Β· HTML::O...::Number(3). Bye bestie, go manipulate some numbers! πβ¨
π¦ where this page comes from
- alpine 3.24: perl-html-object-doc 0.6.0-r1 Β· GPL-1.0-or-later OR Artistic-1.0-Perl
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms