- Home /
Getting the Nth digit of an interger. (Js)
Hello.
I'm stuck on a simple problem but I went throught different solutions and I nore worked for me so far. I'm trying to nth digit of an integer. For example, If I have number=6459 I would like to be able to get the third number, which is 5 in this case.
This method worked for me a couple of days ago but its no more working for an unknown reason. I get the following error : "BCE0024: The type 'String' does not have a visible constructor that matches the argument list '(int)'."
var number = 6459;
var one = String(number).charAt(2);
var one_as_number = Number(one);
Thank you for your kind help :)
Answer by Eric5h5 · Dec 30, 2014 at 11:29 PM
Unity doesn't use Javascript, so that code could never work under any circumstances. You can refer to a specific char in a string array, then convert that char to a string and parse it.
var number : int = 6459;
var digit : int = int.Parse(number.ToString()[2].ToString());
Debug.Log (digit); // prints 5
Awesome ! I don't really get why ToString()[2].ToString() but as long as it's working it's fine ! Thank you a lot and happy new year :)
The first ToString turns the whole number to a string. the [2] gets the second char in that string. the second ToString converts the retrieved char back to a string. :) clever little solution.
Answer by Eric5h5 · Dec 31, 2014 at 12:55 AM
Another possibility, using the Unicode values of chars:
var digit = System.Convert.ToInt32(number.ToString()[2]) - 48;
Your answer
Follow this Question
Related Questions
Variable in String 1 Answer
How do you check if a string has already been removed from a generic list? 1 Answer
Convert Array into One String (Js) 1 Answer
Adding GUI to this 1 Answer
string searching question 1 Answer