var o1o : Vector3 = Vector2(0,1); // UnityScript
Vector3 o1o = new Vector2(0,1); // C#
(However, you can also get the same result from using the "xy" Vector3 constructor):
var o1o : Vector3 = Vector3(0,1); // UnityScript
Vector3 o1o = new Vector3(0,1); // C#
This kind of thing starts to become helpful when you have functions that take a Vector3 as a parameter, but you're only working in 2D. For example, maybe you want to create a UV transformation matrix with Matrix4x4.TRS. In that case, the position variable is only going to be a Vector2, as UV space is two-dimensional. So, despite the fact that the function requires a Vector3, you can send it a Vector2 without any problem.