Question

une question rapide, probablement facile dont la réponse est probablement « meilleure pratique »

je suis un tutoriel pour une application Web mobile modèle personnalisé Safari, et de changer les vues autour de ce code est utilisé:

function btnSave_ClickHandler(event)
{
    var views = document.getElementById('stackLayout');
    var front = document.getElementById('mainScreen');
    if (views && views.object && front) {
        views.object.setCurrentView(front, true);
    }
}

Ma question est à peu près la if instruction conditionnelle. Quel est ce triplet dire, et pourquoi faire chacune de ces choses doivent être vérifiées avant que la vue peut être modifiée? Est-ce que views.object tester juste pour voir si la variable de vues répond à la méthode objet? Pourquoi est-ce important?

EDIT - C'est / était le principal point de cette question, et il ne regarde pas Javascript comme langue et comment les boucles if travail, mais plutôt pourquoi ces 3 choses doivent spécifiquement à vérifier:

Dans quels scénarios pourraient views et front ne pas exister?

Je n'écris généralement pas mon code si redondante. Si le nom de ma table MySQL ne change pas, je vais juste dire UPDATE 'mytable' WHERE... au lieu de beaucoup plus bavard (et à mon avis, redondant)

$mytable = "TheSQLTableName";
if ($mytable == an actual table && $mytable exists && entries can be updated){
    UPDATE $mytable;
}

Alors que si la table le nom (ou dans l'exemple JS, les noms de la vue) ne sont pas « codés en dur » mais sont plutôt une entrée utilisateur ou autrement mutable, je pourrais droite mon code comme l'exemple DashCode a. Alors dites-moi, ces valeurs peuvent « aller mal » de toute façon?

Merci!

Était-ce utile?

La solution

Le teste si ces 3 conseils pour vous assurer qu'ils ne sont pas nuls. Un pointeur nul est égal à 0 qui se transforme en faux. Si l'un de ces 3 pointeur sont 0 (null) alors il ne sera pas essayer de les utiliser.

Je ne suis pas sûr de ce que le déréférencement d'un pointeur NULL ne en Javascript mais il est une erreur et peut provoquer une exception. Le cas est simplement d'éviter cette possibilité.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top