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

Άποψη: 9782|Απάντηση: 0

[JavaScript] Η διαφορά μεταξύ των μεθόδων encodeURI και encodeURIComponent στο js

[Αντιγραφή συνδέσμου]
Δημοσιεύτηκε στις 23/12/2015 5:42:44 μ.μ. | | |
1. encodeURI() και encodeURIComponent() κωδικοποιούν χαρακτήρες.

2. decodeURI() και decodeURIComponent() αποκωδικοποιούν τους αντίστοιχους κωδικοποιημένους χαρακτήρες.


3. Η μέθοδος encodeURI δεν κωδικοποιεί γράμματα και αριθμούς ASCII, ούτε κωδικοποιεί αυτά τα σημεία στίξης ASCII: - _ . ! ~ * ' ( ) 。

Ο σκοπός αυτής της μεθόδου είναι να κωδικοποιήσει πλήρως το URI, έτσι ώστε η συνάρτηση encodeURI() να μην ξεφεύγει από τα ακόλουθα σημεία στίξης ASCII που έχουν ειδική σημασία στα URI: ; /?:@&=+$, #

4. Η μέθοδος encodeURIComponent() δεν κωδικοποιεί γράμματα και αριθμούς ASCII, ούτε κωδικοποιεί αυτά τα σημεία στίξης ASCII: - _ . ! ~ * ' ( ) 。

Άλλοι χαρακτήρες (π.χ. :; /?:@&=+$,# αυτά τα σημεία στίξης που χρησιμοποιούνται για τον διαχωρισμό των στοιχείων URI), αντικαθίστανται όλα από μία ή περισσότερες δεκαεξαδικές ακολουθίες διαφυγής.

5. Επεξήγηση εικόνας, ο ρόλος του encodeURI σε ιαπωνικούς και κορεατικούς κινεζικούς χαρακτήρες πλήρους πλάτους. Αντί να χειρίζεται ειδικούς χαρακτήρες σε διευθύνσεις URL, το .encodeURIComponent() δημιουργεί ειδικούς χαρακτήρες σε διευθύνσεις URL και τους μετατρέπει σε αντίστοιχο κώδικα ASCII

6. Αυτές οι μέθοδοι είναι συναρτήσεις Javascrip{filtering}t, δηλαδή μπορούν να χρησιμοποιηθούν μόνο στο Javascrip{filtering}t.

7. Εάν δεν χρησιμοποιείτε decodeURI() και decodeURIComponent() από την πλευρά της υπηρεσίας, μπορείτε να χρησιμοποιήσετε fw = new String(fw.getBytes("ISO-8859-1"), "UTF-8"); Σύνταξη Java, ελαφρώς διαφορετική σε άλλες γλώσσες.




Προηγούμενος:c# encodeURICΑποκωδικοποίηση στοιχείου
Επόμενος:Μια λύση στο πρόβλημα των δεσμεύσεων Ajax Post με κινεζικούς αλλοιωμένους χαρακτήρες στο IE στο JQuery
Αποκήρυξη:
Όλο το λογισμικό, το υλικό προγραμματισμού ή τα άρθρα που δημοσιεύονται από το Code Farmer Network προορίζονται μόνο για μαθησιακούς και ερευνητικούς σκοπούς. Το παραπάνω περιεχόμενο δεν θα χρησιμοποιηθεί για εμπορικούς ή παράνομους σκοπούς, άλλως οι χρήστες θα υποστούν όλες τις συνέπειες. Οι πληροφορίες σε αυτόν τον ιστότοπο προέρχονται από το Διαδίκτυο και οι διαφορές πνευματικών δικαιωμάτων δεν έχουν καμία σχέση με αυτόν τον ιστότοπο. Πρέπει να διαγράψετε εντελώς το παραπάνω περιεχόμενο από τον υπολογιστή σας εντός 24 ωρών από τη λήψη. Εάν σας αρέσει το πρόγραμμα, υποστηρίξτε γνήσιο λογισμικό, αγοράστε εγγραφή και λάβετε καλύτερες γνήσιες υπηρεσίες. Εάν υπάρχει οποιαδήποτε παραβίαση, επικοινωνήστε μαζί μας μέσω email.

Mail To:help@itsvse.com