Is there a difference (code-wise) between a surface and a polygon?

I’m testing a script on a few objects; it works for some, and not for others.
The only difference is that some are surfaces and some are polygons, can that make a difference to whether or not the script works?
I’ll post the script; it’s essentially toggling the mesh renderer.

function Start()
{
GetComponent(MeshRenderer).enabled = false;
}

function Update () {
if (Input.GetKeyDown (KeyCode.Z))
GetComponent(MeshRenderer).enabled = true;

if (Input.GetKeyDown (KeyCode.X))
GetComponent(MeshRenderer).enabled = false;
}

everything is polygons
be more specific