Maison > interface Web > js tutoriel > Analyse de l'utilisation du signe dollar $ dans le prototype framework_javascript skills

Analyse de l'utilisation du signe dollar $ dans le prototype framework_javascript skills

WBOY
Libérer: 2016-05-16 15:18:46
original
1184 Les gens l'ont consulté

L'exemple de cet article décrit l'utilisation du signe dollar $ dans le cadre du prototype. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :

Prototype est un outil important pour l'implémentation orientée objet et un bon framework pour JavaScript.
Quiconque utilise jquery sait qu'il y a un signe $ dollar dans jquery, et il y a aussi $ dans le prototype. Quelle est la différence entre eux ?

1. Utilisation de $() dans le prototype

Le prototype est écrit sous la forme $("test") ou $$("#test"), ce qui équivaut à document.getElementById("test");
en js méthode d'écriture jqueryp $("#test"), qui est également équivalente à document.getElementById("test");

en js

2. Utilisation de $$() dans le prototype

jquery écrivant $("div") équivaut à document.getElementsByTagName('div')
Si le prototype veut aussi simplement obtenir tous les éléments div de la page, il ne peut pas être écrit ainsi.
La façon d'écrire un prototype est $("div") qui équivaut à document.getElementById("div")
La façon d'écrire un prototype est $$("div") qui équivaut à document.getElementsByTagName('div')
La méthode d'écriture du prototype $$("input[value=tank]") obtient l'étiquette dont la valeur de la zone de saisie est tank sur la page. Elle est en fait similaire à jquery, sauf qu'il y a un symbole $ supplémentaire

.

3. Utilisation de $A() dans le prototype

$A est principalement utilisé pour convertir toute collection pouvant être utilisée comme tableau (comme une NodeList, la HTMLCollection renvoyée par de nombreuses méthodes DOM ou la propriété arguments d'un objet fonction) en un véritable objet Array. Les quatre méthodes suivantes peuvent masquer la balise div dans la page

$A($$('div')).each(Element.hide); 
$A($$('div')).map(Element.extend).invoke("hide"); 
//从思想上来看,下面二种写法,我在用jquery时,也经常用 
$A($$('div')).each(function(name,index){ 
 name.style.display='none'; 
 alert(name.innerHTML); 
 }) 
 $A($$('div')).each(function(name,index){ 
 $(name).hide(); 
}) 

Copier après la connexion

Si TypeError : element.style is undefined { message="element.style is undefined", more...} apparaît dans l'exemple, veuillez mettre à jour la version de votre prototype

4. Utilisation de $F() dans le prototype

Personnellement, je pense que l'utilisation de $F est conçue pour faciliter la récupération des données du formulaire, mais c'est relativement simple car elle ne peut être récupérée que par ID


$F("nom") Correct


$F("name") Incorrect, TypeError : l'élément est nul { message="l'élément est nul", plus...}

5. Utilisation de $H() dans le prototype

Lorsque vous transmettez un objet en tant que paramètre de la fonction, $H entrera l'objet dans l'objet de hachage propriétaire d'un prototype. $H ressemble à un convertisseur, déclenchant un effet de changement de situation

$H({name:'tank',sex:1,height:'170cm'}).toArray()
[["name", "tank"], ["sex", 1], ["height", "170cm"]]
$H({name:'tank',sex:1,height:'170cm'}).toQueryString()
"name=tank&sex=1&height=170cm"

Copier après la connexion

6. Utilisation de $R() dans le prototype

La fonction $R et le constructeur d'origine ont exactement les mêmes paramètres : start et end représentent respectivement la valeur limite inférieure et la valeur limite supérieure (les types des deux paramètres doivent être cohérents), et exclusif représente s'il faut exclure la valeur limite supérieure. valeur limite (fin du paramètre) . La valeur limite supérieure n'est pas exclue par défaut.

Les instances de $R décrivent une série de valeurs qui changent selon certaines règles, telles que des nombres, du texte ou d'autres types qui prennent en charge sémantiquement la dérivation de valeurs adjacentes

Il est plus facile pour les gens de s'en souvenir s'ils peuvent l'expliquer à l'aide d'exemples

$A($R("a","z",true)).join(',') //加了参数true 
"a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y" 
$A($R("a","z")).join(',') //没有加 
"a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z" 

Copier après la connexion

$R déduit un objet $R selon les règles, $A convertit l'objet en tableau et utilise le signe pour convertir le tableau en chaîne.

$R(0, 10).each(function(value){ 
 alert(value*value); 
}); 
//结果和上面的一样的,但是each解释的对像是不一样的。 
$A($R(0, 10)).each(function(value){ 
 alert(value*value); 
}); 

Copier après la connexion

Si une telle erreur est signalée, TypeError : value.succ is not a function { message="value.succ is not a function", plus...}, veuillez mettre à niveau

7. Utilisation de $w() dans le prototype

$w convertit une chaîne avec des espaces comme délimiteurs en un tableau. La fonction de burst(" ",$string); de root php est la même et est plus ciblée.

$w("aa bb").join(',')

Si une telle erreur est signalée, ReferenceError : $w is not set { message="$w is not set", plus...}, veuillez mettre à niveau

J'espère que cet article sera utile à tout le monde dans la programmation JavaScript.

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal