Reputation: 745
What I am looking for is how strings are physically treated in Javascript. Best example I can think of for what I mean is that in the Java api it describes the storage of strings as:
String str = "abc";" is equivalent to: "char data[] = {'a', 'b', 'c'};
To me this says it uses an array object and stores each character as its own object to be used/accessed later (I am usually wrong on these things!)...
How does Javascript do this?
Upvotes: 8
Views: 4629
Reputation: 36
Strings are stored in the same format in javascript as other languages stores. Suppose var word = "test" than at word will be as an array of characters and the 't' will come at 0th position and so on.
The last iteration as taking 'word.length' will return undefined. In other languages, it returns as '\0'.
Upvotes: 0
Reputation: 41934
Strings are String
objects in JavaScript. The String
object can use the []
notation to get character from a string ("abc"[0]
returns 'a'
). You can also use the String.prototype.charAt
function to achieve the same result.
Side node:
var a = 'abc'
andvar b = new String('abc')
are not the same. The first case is called a primitive string and get converted to aString
object by the JavaScript parser. This results in other data types, callingtypeof(a)
gives youstring
buttypeof(b)
gives youobject
.
Upvotes: 3