I've searched here: http://w3schools.com/jsref/default.asp but could not find any convenience method to perform this function. If I have an array var arrayOfStrings = ["20","10","30","100"]
, is there a quick way to remove all quotes (") from each string in this array without having to loop through?
I essentially want to create this: var arrayOfNumbers = [20,10,30,100]
Thanks
If you want number conversion, you can do it like this...
var arrayOfNumbers = arrayOfStrings.map(Number);
The .map()
method creates a new array populated with the return value of the function you provide.
Since the built-in Number
function takes the first argument given and converts it to a primitive number, it's very usable as the callback for .map()
. Note that it will interpret hexadecimal notation as a valid number.
Another built-in function that would accomplish the same thing as the callback is parseFloat
.
var arrayOfNumbers = arrayOfStrings.map(parseFloat)
The parseInt
function however will not work since .map()
also passes the current index of each member to the callback, and parseInt
will try to use that number as the radix parameter.
DEMO: http://jsfiddle.net/UDWvH/
[
20,
10,
30,
100
]
You could try like this:
for(var i = 0; i < myArray.length; i++)
{
myArray[i] = parseInt(myArray[i], 10);
}
Have a look to the parseInt function.
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