In JavaScript I can do this:
foo = "\u2669" // 1/4 note
But I can't do this
foo = "\u1D15D" // full note -five hex digits
It will be interpreted as "\u1D15" followed by "D"
Are there any workarounds for this?
UPDATE 2012-07-09: The proposal for ECMAScript Harmony now includes support for all Unicode characters.
In the MDN documentation for fromCharCode, they note that javascript will only naturally handle characters up to 0xFFFF. However, they also have an implementation of a fixed method for fromCharCode that may do what you want (reproduced below):
function fixedFromCharCode (codePt) {
if (codePt > 0xFFFF) {
codePt -= 0x10000;
return String.fromCharCode(0xD800 + (codePt >> 10), 0xDC00 + (codePt & 0x3FF));
}
else {
return String.fromCharCode(codePt);
}
}
foo = fixedFromCharCode(0x1D15D);