I have a simple function to add zeros before numbers:
function validateString(length, str){
var newStr = '' + str;
for (var i = str.length; i < length; i++)
newStr = '0' + newStr;
return newStr;
}
What do I need to change (types of variables?) to make it works for the numbers too?
validateString(12,2);
"2" // Unexpected rezult
validateString(12,'2');
"000000000002"
This is happening because you're calling str.length and not newStr.length. Number values have an undefined length.
Change:
for (var i = str.length; i < length; i++)
To:
for (var i = newStr.length; i < length; i++)
function validateString(length, str){
var newStr = '' + str;
for (var i = newStr.length; i < length; i++)
newStr = '0' + newStr;
return newStr;
}
console.log(validateString(12,2));
console.log(validateString(12,'2'));
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With