Question: I've "cached" a jQuery object that I use inside a loop called `$myElement`. I would like to use some native JavaScript functions on it (for better performance). However, my attempts below throws errors (the element is undefined). Is there any way to accomplish this?

```
$myElement.find('span')[0];

$myElement.find('span').get(0);

```

Update: What Im trying to do is something like:

```
$myElement.find('span')[0].innerHTML('some text');

```

That's giving me an error.

Answer: 
The `.innerHTML` property is not a function. Just set its content using assignment.

```
.innerHTML = "foo";

```

But be careful with `.innerHTML` when using jQuery. If you clear content like that, and any of that content has any data or handlers assigned with jQuery, you'll have a memory leak.

A safer practice would be to use jQuery to update content.

```
.html("foo");

```
You can use **[jQuery's "first"](http://api.jquery.com/first/)** function like this:

```
$myElement.find('span').first();

```

Or use to get an nth-child by an index using [**jQuery's "eq"**](http://api.jquery.com/eq-selector/) function, like this:

```
$myElement.find('span').eq(3);

```

Or you can also use **[jQuery's "get"](http://api.jquery.com/get/)** function to return a DOM instance of that match:

```
$myElement.find('span').get(2);

```

As you can see on this example:

* <http://jsfiddle.net/be8YK/2/>