Question

I found this snippet, but I am not sure if it should have -5 or -6, because I do not what exactly substr(negative) does.

('00000'+(15).toString(16)).substr(-5)
Was it helpful?

Solution

substr() returns the a string made up of the last N characters, when -N is passed to it.

"Hello".substr(-2) => "lo"

From the docs:

If start is negative, substr uses it as a character index from the end of the string. If start is negative and abs(start) is larger than the length of the string, substr uses 0 as the start index.

OTHER TIPS

In general:

str.substr(-n)

Is the same as:

str.substr(str.length-n)

Which is the same as:

str.substr(str.length-n,str.length)

Which returns the sub-string:

str[str.length-n,...,str.length-1]
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top