@vesuvius: I am not Javascript expert. But I thought it would never blow up at runtime because it is always valid. Just more like incorrect logic giving you unsatisfying result. Have no idea what this would do, var a = 1 * "one";