How to change char value in array to int value? and detect first element and second element in array
arr = [a,a,a,b,b,a,b]
first element = a
second element = b
a = 1, b = 2
My expected output
arr = [1,1,1,2,2,1,2]
CodePudding user response:
You can do it like so.
You can only get the char code of an index in a string. Since we have an char array we can alsways get the index of 0
.
The smallest charcode is of A
which is 65. In this example I transform a
to A
which resolves to 65
then I remove 64 since a
should be 1
. Consecutively b
is mapped to B
which is 65 and resolves to 2
since 64 is removed
const arr = ['a','a','a','b','b','a','b']
const res = arr.map(char => char.toUpperCase().charCodeAt(0) - 64)
console.log(res)
CodePudding user response:
Something like this should work (I used NodeJs console):
> let a = ['a','a','a','b','b','a','b']
undefined
> a
[
'a', 'a', 'a',
'b', 'b', 'a',
'b'
]
> var result = []
> for (var i = 0; i < a.length; i ){
... result.push(a[i].charCodeAt(0))
... }
7
> result
[
97, 97, 97, 98,
98, 97, 98
]