Your question isn't completely clear, but I think what you are saying is that you have a JavaScript array with html encodings of characters that you want to read from and render as text in the DOM.
There are many techniques presented in HTML-encoding lost when attribute read from input field for html encoding/decoding, though it isn't necessary to do the decoding yourself manually.
Without a parameter, the jquery .html() method is a getter which returns the inner html of the first element matching the selector. It sounds, however, like what you want to do is set the html of that element (the encoded character must be added as html rather than text to show up correctly). You can either set the html directly, or decode the character (using the method from that post) and set the text (the first seems more straightforward). You would do it like this:
$(element).html("... á ...");
If you wanted to append each of the characters from the array to the same element, you would use the append method as is since it takes an html string as its parameter.
var x = $(element);
$.each(charArray, function(index,value) {
x.append(value);
});
Or you could simply create a string by concatenating the contents of the array, then call append only once with that string as its parameter.
I hope I understood your question. Just so you know, the jQuery append method isn't related to arrays, and calling .html() after an append simply returns the new inner html of the element (it does not change anything).