ΥπολογιστέςΠρογραμματισμός

JavaScript: Λειτουργία λειτουργία. γλώσσα προγραμματισμού JS

Ιδέες δυναμικό περιεχόμενο για να σχηματίσουν web-ΠΟΡΩΝ έχουν γίνει ο κανόνας. Στατικές σελίδες και το σχεδιασμό templates Web ολοκληρώσει τελικά την αποστολή τους.

Ωστόσο, οι σύγχρονες web-πόρων δεν πρέπει να αντιπροσωπεύονται από ένα σύνολο σελίδων που δημιουργούνται από τον server και να ανανεώσετε το πρόγραμμα περιήγησης (JS + AJAX).

Web-based αποθετήριο κατά τη στιγμή της άφιξης του πελάτη μπορεί να είναι ένα ζευγάρι των τίτλων για την ιστορία, κάποιο κείμενο στο «κεφάλι», λίγες γραμμές κώδικα στο «σώμα» και όλα. Το υπόλοιπο της «συλλάβει» κατά τη διαδικασία της επισκέπτη - είναι μια ιδανική τοποθεσία, ή φιλοδοξούν να είναι ένα.

Τοποθετήστε την περιγραφή και τη φύση των λειτουργιών

опыт, наработаный многими десятилетиями. JavaScript - Είναι μια εμπειρία narabotany δεκαετίες. Έχει μια σημαντική ιστορία της ανάπτυξης, η σύγχρονη ειδική ομάδα δημιουργών τους προγραμματιστές. Γλώσσα καλά μελετημένο, αξιόπιστη, όμορφη και δίνει μια πραγματική ευκαιρία για τους προγραμματιστές να γράφουν κώδικα για μια αξιοπρεπή και αυτο-βελτίωση.

Η έννοια του αλγορίθμου είναι μια συνάρτηση εδώ δεν υπάρχει κατ 'αρχήν. Φυσικά, ο κύριος του έργου μπορεί οπουδήποτε στη σελίδα για να εισάγετε τον κωδικό σενάριο να τεθεί σε αυτήν και θα εκτελεστεί. страницы? Αλλά ποιο είναι το σημείο του κώδικα, το οποίο εκτελείται μόνο μία φορά: κατά τη φόρτωση (επαναφόρτωση) τη σελίδα; Είναι δυνατόν να ρυθμίσετε τις αρχικές τιμές του ό, τι κάποιες ασήμαντες μεταβλητές.

Σενάριο - αυτό το μέρος είναι η σωστή περιγραφή των μεταβλητών και των λειτουργιών, παρά ένα καλό κομμάτι του κώδικα που γράφτηκε για τους δικούς του λόγους. Είναι ένα σύνολο λειτουργιών είναι απαραίτητη και σημαντική, ίσως - την αμοιβαία άμεση σύνδεση τους, αλλά τις περισσότερες φορές είναι διαφορετική. Τόπος περιγραφή της λειτουργίας και του τόπου εφαρμογή του δεν είναι το ίδιο πράγμα.

Δεν είναι απαραίτητο ότι η λειτουργία του θα ζητήσει άλλη λειτουργία άμεσα, αλλά μπορεί να γίνει έμμεσα μέσω του σχηματισμού της δυναμικής κώδικα. Ο επισκέπτης παίρνει μια απόφαση στον κωδικό αυτό και λειτουργεί αρκετά διαφορετικές λειτουργίες του συστήματος.

λειτουργική δυναμική

Λειτουργική δυναμική - δεν είναι μόνο και όχι τόσο χειριστές εκχωρηθεί σε στοιχεία της σελίδας είναι λειτουργίες που αποτελούν τα στοιχεία της σελίδας, και των άμεσων χειριστές, επίσης, μπορεί να αλλάξει.

Η δράση λαμβάνει χώρα στη σελίδα, ανάλογα με τα στοιχεία και τη συμπεριφορά των επισκεπτών σε αυτό. Κίνηση του ποντικιού, του πληκτρολογίου, κουμπιά, κλικ, γεγονότα, αντικείμενα και άλλες περιστάσεις οδηγούν στην έναρξη των απαραίτητων λειτουργιών.

Αρχικά δεν υπάρχει καμία συνοχή και δεν υπάρχει παράλληλο. Υπάρχει μια κατάλληλη απάντηση στα γεγονότα web-πόρο. Πόσο γρήγορα την Javascript για να πληροί μια συγκεκριμένη λειτουργία εξαρτάται από πολλούς τεχνικούς (υπολογιστή, γραμμές επικοινωνίας) και σημασιολογική (λογική αλγόριθμο, θεματική ενότητα, δηλαδή το πρόβλημα) παράγοντες.

Στην πραγματικότητα, μπορεί να υποστηριχθεί ότι κάτι έχει εργαστεί παράλληλα, αλλά κάτι θα γίνει μετά από κάτι, αλλά το νόημα αυτής της ειδικής δεν είναι. Είναι σημαντικό το γεγονός ότι η λειτουργία JavaScript - είναι μια ευκαιρία να δημιουργήσουμε την κατάλληλη απάντηση στις ενέργειες του επισκέπτη.

Αυτό το νέο τρόπο σκέψης στον σχεδιασμό: κατανεμημένης επεξεργασίας στα βάθη ενός ενιαίου προγράμματος περιήγησης!

Η σύνταξη για μεταβλητές και συναρτήσεις

Οι Javascript για μεταβλητές τοποθετούνται στην ετικέτα «σενάριο», και στο σώμα της συνάρτησης. Οι λειτουργίες που ορίζονται με τον ίδιο τρόπο. Ειδική σημασία να γράψει μέσα στη συνάρτηση υπάρχει και μια άλλη λειτουργία, αλλά μπορεί να είναι απαραίτητη για διάφορους λόγους, και είναι αρκετά λογικό.

Περιγραφή της λειτουργίας αρχίζει συνήθως με τη λέξη-κλειδί «λειτουργία», ακολουθούμενο από το όνομά του, ο κατάλογος των επιχειρημάτων σε παρένθεση, χωρισμένα με κόμμα, και το σώμα της λειτουργίας σε αγκύλες.

Σε αυτό το παράδειγμα, οι δύο λειτουργίες που περιγράφονται ότι παρέχουν AJAX ανταλλαγής μεταξύ της σελίδας και του διακομιστή. Μερικώς scXHR περιγράφηκε παραπάνω, επειδή διατίθεται σε δύο InitXML, και εντός WaitReplySC.

Το όνομα της συνάρτησης και η παράμετρος «λειτουργία»

Δεν έχει παρουσιαστεί την ασύγχρονη έκδοση όταν λειτουργία JavaScript λειτουργιών καλείται μετά την απάντηση του server. Έτσι, λαμβάνει μια απόκριση από το διακομιστή, WaitReplySC πρόσβαση στην ετικέτα της σελίδας, γεμίζει τις πληροφορίες που έλαβε και προκαλεί άλλες λειτουργίες, το οποίο μπορεί κάλλιστα να ξεκινήσει η επόμενη αίτηση στο διακομιστή.

Εδώ είναι επίσης σημαντικό να σημειωθεί ότι WaitReplySC - μια λειτουργία. scXHR.onreadystatechange = WaitReplySC она передается как параметр. Όμως, σύμφωνα scXHR.onreadystatechange = WaitReplySC που περνά ως παράμετρος. Αυτή η γενική συνάρτηση μεταφοράς κανόνα σε άλλες λειτουργίες ως παράμετροι. Αιχμηρά παρένθεση και τους έδωσε την παράμετρο (α) της - η λειτουργία θα εκτελεστεί αμέσως. Αφήγηση από το όνομα μόνο, και έτσι ό, τι. Κλήση της συνάρτησης θα κάνει αυτός που πήρε το όνομά της.

Η λειτουργικότητα υλοποιείται μέσω AJAX, σας επιτρέπει να καλέσετε μια συνάρτηση JavaScript μέσα από τα δεδομένα που λαμβάνονται από το διακομιστή. Στην πραγματικότητα, στέλνοντας ένα αίτημα στον server, μία ή την άλλη λειτουργία δεν μπορεί καθόλου «ξέρουν» το οποίο λειτουργεί γυρίζει, και με ποιο πληροφοριών.

Από τη λειτουργία και το αποτέλεσμά της

Το σώμα της συνάρτησης, μπορείτε να γράψετε οποιαδήποτε φορείς γλώσσα, ο οποίος, στην πραγματικότητα, για τον οποίο προορίζεται. Μέσα χαρακτηριστικά μεταβλητές που δηλώνονται μέσα και έξω, αλλά όχι εκείνα που περιγράφονται σε άλλες λειτουργίες.

Αν θέλετε η συνάρτηση να επιστρέψει ένα αποτέλεσμα, μπορείτε να χρησιμοποιήσετε την εντολή return JavaScript: επιστροφή. Το σώμα της συνάρτησης μπορεί να είναι ένας επαρκής αριθμός των δηλώσεων επιστροφής. Δεν είναι απαραίτητο ότι όλα αυτά θα επιστρέψει το αποτέλεσμα του ίδιου τύπου.

Συνήθως, οι προγραμματιστές σεβαστός αυτή την ευκαιρία και, ανάλογα με την περίπτωση, να αποφασίσει να αποχωρήσει από τη λειτουργία όσο το δυνατόν συντομότερα.

Δεν είναι απαραίτητο να τρέχει μέσα από το σύνολο του αλγόριθμο των λειτουργιών, όταν μπορείτε να πάρετε νωρίτερα.

επιχειρήματα λειτουργία

Τα επιχειρήματα που πέρασε στη λίστα λειτουργία, χωρισμένα με κόμμα, που περικλείονται σε παρενθέσεις, και είναι ακριβώς μετά από το όνομά της. Τα επιχειρήματα που χρησιμοποιούνται τα ονόματα των μεταβλητών, αλλά μπορείτε να περάσετε τις αξίες άμεσα. Για να περάσει μια λειτουργία JavaScript σε λειτουργία, το μόνο που χρειάζεται να καθορίσετε το όνομα της χωρίς παρενθέσεις.

Στο εσωτερικό του λειτουργία είναι διαθέσιμη μεταβλητή επιχειρήματα, που έχει ένα ακίνητο μήκος. Μπορείτε να ανατρέξετε σε οποιαδήποτε λειτουργία επιχείρημα με επιχειρήματα [0], επιχειρήματα [1], ... για τα τελευταία επιχειρήματα [arguments.length-1].

Αλλαγή της λειτουργίας του επιχειρήματος είναι πραγματικά μέσα στη συνάρτηση, αλλά όχι έξω από αυτό. Για να αλλάξει κάτι εκτός λειτουργίας, ο χειριστής θα πρέπει να χρησιμοποιεί την επιστροφή JavaScript, μέσω των οποίων διέρχονται την απαιτούμενη τιμή προς τα έξω.

Μετά την ολοκλήρωση της λειτουργίας, όλα αυτά που σχετίζονται με την εφαρμογή της, θα καταστραφεί. Κατά την εκτέλεση των καθηκόντων μπορεί να αλλάξει τις εξωτερικές μεταβλητές, εκτός από εκείνα που περιγράφονται σε άλλες λειτουργίες, συμπεριλαμβανομένων εκείνων στο εσωτερικό.

Έχουμε επιχειρήματα καλούμενος ακίνητο, το οποίο έχει ως στόχο να καλέσετε μια συνάρτηση που εκτελείται σε μια δεδομένη στιγμή. Αν η ίδια η αιτία, η έκδοση JavaScript της λειτουργίας στη λειτουργία θα εφαρμόσει αναδρομή.

Χρήση των λειτουργιών

Η κύρια ανησυχία των λειτουργιών - για να εξυπηρετήσει το πρόγραμμα περιήγησης εκδήλωση. Για να το κάνετε αυτό σχεδόν σε κάθε ετικέτα έχει τη δυνατότητα να καθορίσετε ένα όνομα εκδήλωσης και τη λειτουργία της κατασκευής του. Μπορείτε να καθορίσετε πολλές εκδηλώσεις, αλλά κάθε περίπτωση ενδείκνυται μόνο μία λειτουργία.

Μια λειτουργία μπορεί να χειριστεί πολλαπλά στοιχεία της σελίδας και μερικά γεγονότα. Μέσα από «αυτό» επιλογή, μπορείτε να μεταφέρετε τη λειτουργία πληροφορίες, όπου ονομαζόταν.

Η κλασική χρήση του JS-λειτουργίες - οι χειριστές εκδήλωση για τα στοιχεία. Σε αυτό το παράδειγμα scfWecomeGo () λειτουργία ή scfWelcomeCancel () καλείται με τη μορφή εισόδου / εξόδου του επισκέπτη, και κατά την επιλογή του τρόπου λειτουργίας scfMenuItemClick (αυτή).

Στην τελευταία περίπτωση, η παράμετρος πέρασε με «αυτό», η οποία σας επιτρέπει να μάθετε ως εκ θαύματος από ό, τι είναι ντίβα ονομαζόταν. Στην πραγματικότητα, το JavaScript είναι τόσο ποιοτικά εμφυτεύεται στο DOM, και είναι τόσο εύκολα σας επιτρέπει να περιηγηθείτε τα στοιχεία του, να συλλέξει τις απαραίτητες πληροφορίες ότι η δυναμική των σελίδων μπορεί απλά να είναι απρόβλεπτη.

Η λειτουργία δεν πρέπει να επιστρέψει ένα string, αριθμό, ή άλλη λειτουργία. Μπορεί να επιστρέψει μια πλήρη HTML στοιχείων, και το οποίο είναι το απαιτούμενο αριθμό των στοιχείων, με χειριστές τους, τις εκδηλώσεις τους.

Με την τοποθέτηση ενός στοιχείου στη σελίδα, ο κύριος του έργου δημιουργεί μια νέα λειτουργία που είναι καλό από την άποψη του για την επίλυση του προβλήματος και να πληρούν τα συμφέροντα των επισκεπτών, αλλά αρκετά δύσκολη ως προς την εφαρμογή.

Δεδομένου ότι η ανάπτυξη ενός τέτοιου πλήρως λειτουργικό, εύκολο να χαθείς σε εγγενή κώδικα, σε κλήσεις συναρτήσεων, σε στιγμές που σχηματίζονται ή ότι το περιεχόμενο της μιας ή της άλλης σελίδας. Πριν από τη λήψη μιας τέτοιας κατεύθυνση της ανάπτυξης, δεν εμποδίζουν ένα καλά ζυγίζουν τα πάντα.

Από την κατανομή της σκέψης

Ο κύριος του έργου θα πρέπει να σκεφτούμε σε επίπεδο όλων των στοιχείων της σελίδας, σε κάθε περίπτωση, και να έχουν μια σαφή παρουσίαση για το πώς πραγματικά συμβαίνει πάντα. Είναι δύσκολο, αλλά το έργο αξίζει τον κόπο.

Σε JavaScript, η λειτουργία ενδέχεται να καθυστερήσει μέχρι κάποιο γεγονός, και όπως χαρακτηριστικά μπορεί να είναι πολλές, και τα γεγονότα έχουν μια τάση να εξαπλωθεί και να μπει στο «σφαίρα της ορατότητας» των διαφόρων επεξεργαστών.

Σε αυτό το παράδειγμα, κάπου πριν η λειτουργία αυτή ονομάζεται, το οποίο άρχισε μενού πλοήγησης αρχείων στοιχείο. Υποτίθεται σελιδοποίησης, δηλαδή στο παράθυρο μόλις επτά αρχεία, τα οποία μπορεί να αφαιρεθεί και να υποβάλλονται σε επεξεργασία. Μπορεί να μετακινηθεί ως αρχείο κάνοντας κλικ στη σειρά, και τα βελάκια και το μπλοκ των επτά σειρές.

Σε κάθε περίπτωση, έχει τη δική του λειτουργία. Με άλλα λόγια, σε αυτό το απλό παράδειγμα, θα πρέπει να γράψετε ένα ζευγάρι των δεκάδων χαρακτηριστικά που θα αντιδρούν σε διάφορες εκδηλώσεις, και μερικές από αυτές τις λειτουργίες θα χειριστεί μια ποικιλία από επιλογές και καταστάσεις που τα γεγονότα δεν ανήκουν.

Για παράδειγμα, κατά την αφαίρεση του κάτω γραμμή πρέπει να μετατοπισθεί προς τα άνω. Αυτό θα απαιτήσει είτε να κάνετε μια νέα επιλογή που συνηθισμένη και σαφώς ένας πόρος, ή να μετρήσει τις γραμμές, χρησιμοποιήστε μια λειτουργία javascript για τον πίνακα και να επιτευχθεί ο στόχος κομψό.

Τα επιχειρήματα και τα αποτελέσματα των λειτουργιών

Τη JavaScript σας επιτρέπει να φέρει τον κωδικό στο «πλήρεις δυνατότητες» κατάσταση. Κανονικά, όταν το επιχείρημα του λειτουργία είναι η λειτουργία. Κατοικίδια επιλογή, η συνάρτηση επιστρέφει μια λειτουργία. Javascript για να το παίρνει πολύ ήρεμα.

Αυτό είναι ένα καλό μηχανισμό, αλλά μάλλον πολύπλοκη σε σχέση με την εφαρμογή. Τεχνικώς αποδεκτή σημασιολογικά παρέχουν «λειτουργική» λογική μετάδοσης μόνο με ειδική έργου.

Όταν μια λειτουργία JavaScript σε λειτουργία - εντάξει, αλλά όταν η λειτουργία δημιουργεί μια λειτουργία, και ότι άλλο, η λογική είναι αρκετά δύσκολο να ακολουθήσει. Στην πραγματικότητα, το ερώτημα δεν είναι αν πρέπει να εφαρμόσουν τις δεξιότητες, το ζήτημα είναι να αποκτήσουν ασφαλή και σωστό αποτέλεσμα.

φροντίδα Developer είναι σαφής και απλή. Υπάρχει ένα πρόβλημα, θα πρέπει να έχετε μια λύση, όχι ένα bug σαν «σφάλμα το JavaScript η λειτουργία δεν είναι ασφαλής» , μια λευκή οθόνη, ή να σταματήσει όλες τις κινητήρα του προγράμματος περιήγησης.

Εάν το επιχείρημα είναι μια συνάρτηση, τότε ο κύριος του έργου για να περάσει μια μεταβλητή με ειδικές ιδιότητες, ότι δεν είναι ένας αριθμός, όχι μια κλωστή, δεν είναι ένα αντικείμενο. Όμως, η χρήση ενός τέτοιου επιχειρήματος μπορεί να οδηγήσει στο γεγονός ότι η αλλαγή των εξωτερικών μεταβλητών και είναι το αποτέλεσμα της εκτέλεσης της λειτουργίας. Ανάλογα με τις αλλαγές που θα είναι επαρκή μεταφορά.

Εκτέλεση παραγόμενος κώδικας

Εφαρμογή εκτέλεση κώδικα που δημιουργείται κατά τη διάρκεια της εργασίας άλλων κώδικα, είναι δυνατή μέσω της «eval». Δεν θεωρείται ότι είναι μια εξαιρετική λύση, αλλά συχνά δεν μπορεί να περιπλέξει τον κωδικό με περιττές λειτουργίες, και να περιορίσει το σχηματισμό των ασήμαντο γραμμή του κώδικα JavaScript και απλά να το εκτελέσει.

Σε αυτό το παράδειγμα, το ένθεμα σχηματίζεται βελονιά σε λειτουργική div κάποιες πληροφορίες. Diva και το περιεχόμενο των πληροφοριών για διαφορετικό αριθμό διαφορετικών θέσεων, διότι μια τέτοια απόφαση σε αυτή την κατάσταση δεν παρέχει ένα εγγυημένο κατάσταση «javascript σφάλμα η λειτουργία δεν είναι ασφαλής» , αλλά σταθερά δώσει το επιθυμητό αποτέλεσμα.

Nuance την Javascript για αλλαγή παραδείγματος «λειτουργία στη λειτουργία»

Αν μπορείτε να το κάνετε χωρίς τα διακοσμητικά στοιχεία, είναι καλύτερα να το χρησιμοποιήσετε. Όλες αυτές οι επιλογές είναι καλό. Βέβαια, σε πολλές περιπτώσεις, είναι η μόνη λύση.

Ένα κλασικό παράδειγμα της αναδρομής: το παραγοντικό. Είναι αρκετά δύσκολο να γράψει έναν αλγόριθμο που θα βρόχο, αλλά είναι πολύ απλό, μπορείτε να ωθήσει τις τιμές φάκελο. Παραγοντικό αυξάνεται πολύ γρήγορα.

Ωστόσο, αναδρομή, και η λειτουργία απαιτεί μια άλλη λειτουργία, που μπορεί να κάνει συνειδητές επανάκλησης - κανονική πράγματα.

Για παράδειγμα, ένα κανονικό τραπέζι. Το άλλο τραπέζι μπορεί να είναι ένας πίνακας. Η ένθεση δεν μπορεί να περιοριστεί. Γράψτε για κάθε πίνακα το δικό του σύνολο των χαρακτηριστικών - πάρα πολύ πολυτέλεια.

Τέτοια παραδείγματα είναι πολλά, και όλα αυτά θα είναι μια πραγματική και πιεστικό πρόβλημα, όχι λόγω του προγραμματισμού. Αυτός είναι ο λόγος για τον οποίο το πρόβλημα έγκειται στο γεγονός ότι η μη-frills μην δημιουργηθεί ένα σύστημα λειτουργιών, πιο συγκεκριμένα, τον εντοπισμό σφαλμάτων και μετέπειτα αξιόπιστη λειτουργία γίνεται φροντίδα JavaScript και προγραμματιστών.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 el.birmiss.com. Theme powered by WordPress.