Parce que l'utilisation de .toString() pour null vars ne fonctionne pas, et je ne peux pas vérifier chacun d'entre eux dans mon application particulière. Je sais que c'est un problème stupidement simple avec une réponse qui doit littéralement me regarder en face en ce moment.Javascript, String: Obtenir un var Javascript comme une chaîne
Répondre
La route non-concaténation est d'utiliser la chaîne () constructeur:
var str = new String(myVar); // returns string object
var str = String(myVar); // returns string value
Bien sûr, var str = "" + myVar;
est plus courte et plus facile. Sachez que toutes les méthodes ici vont transformer une variable avec une valeur de null en "null"
. Si vous voulez vous déplacer, vous pouvez utiliser ||
pour définir un défaut lorsque la valeur d'une variable est « Falsey » comme nulle:
var str = myVar || "";
Juste aussi longtemps que vous savez que et faux serait aussi donner ici ""
ici.
https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Objects/String
Que diriez-vous
var str = '' + someVar;
Semble légèrement hackish ...? Meh, ça va marcher. – Hamster
@Hamster Bien sûr, il est hackish, donc le coller dans une fonction pour le rendre plus propre. Ensuite, vous pouvez le rendre plus intelligent si vous vous retrouvez avec de nouveaux types de variables à traiter. –
+1 - court et simple, fonctionne exactement comme 'String (myVar)', cependant, un edge-case peut être quand une valeur de formulaire est elle-même '' null ''. Ce sont le genre de bugs qui peuvent faire l'enfer de la vie 1 mois en bas de la ligne :) – Anurag
Que diriez-vous ...?
var theVarAsString = "" + oldVar;
Qu'en est-
var str = (variable || "");
//or
(variable || "").toString();
Bien sûr, vous obtenez ce pour false
, undefined
et ainsi de suite, aussi, mais ce sera une chaîne vide et non "null"
String(null)
renvoie "null"
, ce qui peut provoquer des problèmes si la valeur d'un champ de formulaire est elle-même null
. Que diriez-vous d'une fonction de wrapper simple à la place?
function toString(v) {
if(v == null || v == undefined) {
return "";
}
return String(v);
}
Seulement null
, undefined
et chaînes vides doivent retourner la chaîne vide. Toutes les autres valeurs falsifiées, y compris le nombre entier 0
retournera quelque chose d'autre. Certains tests,
> toString(null)
""
> toString(undefined)
""
> toString(false)
"false"
> toString(0)
"0"
> toString(NaN)
"NaN"
> toString("")
""
- 1. javascript php-var obtenir
- 2. bloc HTML stocké comme var javascript
- 3. sous-chaîne de php var inside javascript
- 4. Javascript Obtenir une chaîne au format kb
- 5. javascript string fractionné négatif
- 6. JavaScript Array to String
- 7. comment obtenir javascript variable en java? (Comme le javascript analyseur?)
- 8. Comment puis-je obtenir un VAR JavaScript avec ExternalInterface?
- 9. Javascript String Library
- 10. IXMLDOMDocument2 à string javascript
- 11. Query String Javascript
- 12. Javascript insert parameter inside string
- 13. interpolation String en JavaScript
- 14. JavaScript est un élément une chaîne
- 15. Éclate une chaîne var
- 16. Intellisense - Javascript dans une chaîne
- 17. convertir une chaîne javascript en un objet html
- 18. Ajax Post de JavaScript String Array à JsonResult comme Liste <string> Toujours renvoie Null?
- 19. obtenir une clé sur un hachage javascript
- 20. javascript string exec comportement étrange
- 21. string to datetime conversion javascript
- 22. var transfert entre php et javascript
- 23. javascript passer var à php
- 24. javascript var return object Objet quand devrait renvoyer un int ou une chaîne
- 25. Passer une chaîne par référence en Javascript
- 26. spliting une chaîne en Javascript
- 27. Rendu d'une chaîne d'images comme une vidéo en javascript
- 28. Obtenir des éléments par une chaîne identifiant partielle en javascript
- 29. var Passer de php à javascript
- 30. var javascript vers asp.net MVC modèle
"littéralement" - jeu de mots? – heisenberg
que voulez-vous voir dans la chaîne si 'null' ou' undefined' a été passé, par exemple. – Anurag