Soumis plus tôt à ce sujet, toutes les pièces fonctionnent à ce stade séparément, mais pas ensemble. J'ai essayé de faire bouger les choses pour voir s'il s'agissait simplement d'un problème de commande, mais cela ne l'a pas réglé. Essayer de les mettre dans un grand si/sinon ne semblait pas fonctionner. Je peux soit obtenir la chaîne pour afficher seulement les caractères alphanumériques OU afficher 'pas une chaîne', mais je ne peux pas obtenir le code pour faire les deux. Cette section renverra les caractères alphanumériques appropriés seulement: « pas une chaîne »Retour Alphanumériques -en combinant des éléments de la fonction
function nothingSpecial(str) {
var re = /[A-Z\s0-9]/i;
var newStr = '';
for(var i=0; i<str.length; i++){
if (re.test(str[i])){
newStr = newStr + str[i];
}
}
return newStr;
if(str.length <= 0) {
return ("Not a string!");
}
if (typeof str !== String) {
return "Not a string!"}
}
nothingSpecial("[email protected]#$#")
Cela retour, même si elle doit montrer des caractères alphanumériques, mais est correcte ou en apparence si pour les nombres et « »
function nothingSpecial(str) {
var re = /[A-Z\s0-9]/i;
var newStr = '';
if(str.length <= 0) {
return ("Not a string!");
}
if (typeof str !== String) {
return "Not a string!"}
for(var i=0; i<str.length; i++){
if (re.test(str[i])){
newStr = newStr + str[i];
}
}
return newStr;
}
nothingSpecial(23)
Qu'est-ce que je fais mal? -Merci d'avance!
Le premier extrait a un retour au milieu de la fonction, les autres lignes ne seront pas exécutées – edc65
Que faites-vous essayer de faire? Même si vous avez soumis plus tôt, comment pouvons-nous le savoir? – edc65
Votre second extrait renvoie correctement "pas une chaîne" lorsque vous appelez la fonction avec un argument numérique (23). Un nombre n'est pas une chaîne. – edc65