Hello,
I'm working on an isometric game for fast browsers that support <canvas>, which is great fun. To save information of each tile, I use a two-dimensional array which contains numbers representing a tile ID, like:
var level = [[1, 1, 1, 2, 1, 0],
             [0, 1, 1, 2, 0, 1],
             [0, 1, 1, 2, 1, 1]];
var tiles = [
    {name: 'grass',  color: 'green'},
    {name: 'water',  color: 'blue'},
    {name: 'forest', color: 'ForestGreen'}
];
So far it works great, but now I want to work with heights and slopes like in this picture:
For each tile I need to save it's tile ID, height and information about which corners are turned upward. 
I came up with a simple idea about a bitwise representation of all four corners, like this:
1011 // top, bottom and left corner turned up
My question is: what is the most efficient way to save these three values for each cell? Is it possible to save these three values as one integer?