Unicode JavaScript Variables and Functions
We all get a kick out of unicode symbols, as we all saw in my Unicode CSS Classes post, and just as we can use them for CSS classes, we can use them for JavaScript variables and functions as well! Let's say you want to shave a few bytes of post-minified JavaScript byes by setting false equal to a variable. Why not do so by using a unicode variable?
var ಠ_ಠ = false;
if(someVar === ಠ_ಠ) { // If someVar is false...
// ...
}
Hilarious. The evil eyes signal a negative result. What about saving a few byes on true? The Beatles once said that "All You Need is Love", so let's use a heart:
var ❤ = true;
if(someVar === ❤) {
// ...
}
You can do the same with function names. Functions can be named after unicode symbols:
function ಠ(arg) {
// ...
}
Of course all of this is a bit ... insane, and you should never use unicode symbols, but nonetheless it's possible. Imagine starting a new job and seeing those symbols as meaningful variables -- you'd quit immediately! Hilarious!
![CSS Gradients]()
With CSS border-radius, I showed you how CSS can bridge the gap between design and development by adding rounded corners to elements. CSS gradients are another step in that direction. Now that CSS gradients are supported in Internet Explorer 8+, Firefox, Safari, and Chrome...
![Camera and Video Control with HTML5]()
Client-side APIs on mobile and desktop devices are quickly providing the same APIs. Of course our mobile devices got access to some of these APIs first, but those APIs are slowly making their way to the desktop. One of those APIs is the getUserMedia API...
![MooTools Typewriter Effect Plugin Upgrade]()
Last week I shared my MooTools Typewriter Class with you. It was pretty well received and I got a few feature requests that I've implemented including "backspacing" and character variance delays. I'm not going to explain the old code, so click here...
![jQuery topLink Plugin]()
Last week I released a snippet of code for MooTools that allowed you to fade in and out a "to the top" link on any page. Here's how to implement that functionality using jQuery.
The XHTML
A simple link.
The CSS
A little CSS for position and style.
The jQuery...
I could see this improving minification when processing files with many variables/methods in the same scope (if they don’t use it already, I’m not sure).
Unicode characters are useless for minification, each unicode character uses 2 bytes instead of 1 in utf8. Also, there is no reason not to use unicode in variable names if you properly declare encoding in your html.
Actually, some characters take up to 4 bytes, not just 2. The Kannada letter TTHA in the example rakes 3 bytes for example, so “false” was minified from 5 bytes to 7 :P
lol, it’s a funny joke. but I think it may be realize if some protocol is developed in the future. so cool!