Are you sure? Sometimes you will find that a string gets represented as an array of characters. For example you can for loop over it. And I've also found debuggers sometimes show an array of characters instead of a string. This might not be a problem with socketio but instead with your analysis tool.
I've tried stepping through the javascript in the Chrome debugger in both the chat example and my code. I see an array of chars for my code and a string for the chat example.
stringgets represented as an array of characters. For example you can for loop over it. And I've also found debuggers sometimes show an array of characters instead of a string. This might not be a problem with socketio but instead with your analysis tool.