2010-01-15 15 views

cevap

48
'H'.charCodeAt(0) 
+0

Merhaba, çözüm için teşekkürler. Sadece ingilizce kelimelerle çalışacak mı? Tamilce bir kelime için char kodu bulmaya çalıştığımda düzgün çalışmıyor. String.fromCharCode (2974) kullanırsam; 'ஞ' karakterini döndürür, aynı şekilde, 'ஞ' kullanırsam. charCodeAt (0) 38 alıyorum ve bu '&' için, neden böyle? – shanish

+0

@shanish: "String.fromCharCode (2974) .charCodeAt (0)' yazıyorsanız ne alırsınız? (Benim için çalışır.) Belki de editörünüz ve/veya kaynak dosyanız Unicode dostu değildir. –

9

Kullanım charCodeAt:

var str = 'H'; 
var charcode = str.charCodeAt(0); 
5

Veya Daha iyisi: Onlara defadan fazla kullanmak istiyorsanız

var mySTR = ORD(72); 

kullanarak sonra

function CHR(ord) 
{ 
return String.fromCharCode(ord); 
} 

function ORD(chr) 
{ 
return chr.charCodeAt(0); 
} 

ve/veya çok.

5

@ Silvio'nun cevabı sadece 0xFFFF koduna kadar olan kod noktaları için geçerlidir (son olarak String.fromCharCode'un çıkartabileceği maksimum değerdir).

var utf16ToDig = function(s) { 
    var length = s.length; 
    var index = -1; 
    var result = ""; 
    var hex; 
    while (++index < length) { 
     hex = s.charCodeAt(index).toString(16).toUpperCase(); 
     result += ('0000' + hex).slice(-4); 
    } 
    return parseInt(result, 16); 
} 

onu kullanma:: İşte çalışır şey

''.length 
-> 2 

: Her zaman bir karakterin uzunluğu biridir kabul edemeyiz

utf16ToDig('').toString(16) 
-> "d800df30" 

(https://mothereff.in/utf-8 gelen İlham)