He visto aparecer loc = $('<a>', {href:window.location})[0]; en muchas muestras y todos parecen darlo por sentado. No soy nuevo en jQuery, pero recientemente decidí comenzar a cuidar mis URL, así que mi pregunta es ¿qué significa la extraña combinación de sintaxis?

Le agradecería si pudiera proporcionar un ejemplo de uso, o una referencia ligeramente diferente que se refiera a lo mismo que hace loc aquí.

¡Gracias!

-1
iWillGetBetter 23 dic. 2016 a las 14:08

3 respuestas

La mejor respuesta

$('<a>', {href:window.location}) crea un objeto jquery y [0] se usa aquí para acceder al elemento DOM subyacente. También puede usar get(index) para acceder al elemento DOM subyacente.

loc = $('<a>', {href:window.location});
console.log(loc[0]);
console.log(loc);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
3
Satpal 23 dic. 2016 a las 11:10

Este código crea un nuevo elemento a con el atributo href igual al window.location actual y lo asigna a la variable loc.

0
dima 23 dic. 2016 a las 11:15

El código loc = $('<a>', {href:window.location}) le da el objeto de versión jquery y [0] le da el nodo DOM creado por él sin opciones adicionales.

var loc = $('<a>', {href:window.location});

console.log(loc);
console.log(loc[0]);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
1
Jai 23 dic. 2016 a las 11:13