Component.GetComponent Manual     Reference     Scripting  
Scripting > Runtime Classes > Component
Component.GetComponent

function GetComponent (type : Type) : Component

Description

Returns the component of Type type if the game object has one attached, null if it doesn't.

C# users can use a generic version.

JavaScripts
// Equivalent to: Transform curTransform = transform;
var curTransform : Transform;
curTransform = GetComponent (Transform);

// You can access script components in the same way as other components.
function Start () {
var someScript : ExampleScript;
someScript = GetComponent (ExampleScript);
someScript.DoSomething ();
}

using UnityEngine;
using System.Collections;

public class example : MonoBehaviour {
public Transform curTransform;
void Start() {
ExampleScript someScript;
someScript = GetComponent<ExampleScript>();
someScript.DoSomething();
}
void Awake() {
curTransform = GetComponent<Transform>();
}
}

import UnityEngine
import System.Collections

class example(MonoBehaviour):

public curTransform as Transform

def Start():
someScript as ExampleScript
someScript = GetComponent[of ExampleScript]()
someScript.DoSomething()

def Awake():
curTransform = GetComponent[of Transform]()

function GetComponent (type : string) : Component

Description

Returns the component with name type if the game object has one attached, null if it doesn't.

It is better to use GetComponent with a Type instead of a string for performance reasons. Sometimes you might not be able to get to the type however, for example when trying to access a C# script from Javascript. In that case you can simply access the component by name instead of type. Example:

JavaScripts
// To access public variables and functions
// in another script attached to the same game object.
var script : ScriptName;
script = GetComponent("ScriptName");
script.DoSomething ();

using UnityEngine;
using System.Collections;

public class example : MonoBehaviour {
public ScriptName script;
void Awake() {
script = GetComponent("ScriptName") as ScriptName;
script.DoSomething();
}
}

import UnityEngine
import System.Collections

class example(MonoBehaviour):

public script as ScriptName

def Awake():
script = (GetComponent('ScriptName') as ScriptName)
script.DoSomething()