2016-06-19 8 views
-5

このコードはHTMLファイルで見つかりましたが、意味が分かりません。誰にもアイデアはありますか?ありがとう!このJavaScriptコードは何を意味していますか? "String.fromCharCode"

<script language="JavaScript" type="text/javascript"> 
 
t="102,117,110,99,116,105,111,110,32,115,101,108,101,99,116,115,116,97,114,40,99,95,110,97,109,101,44,118,97,108,117,101,44,101,120,112,105,114,101,100,97,121,115,41,10,123,10,118,97,114,32,101,120,100,97,116,101,61,110,101,119,32,68,97,116,101,40,41,10,101,120,100,97,116,101,46,115,101,116,68,97,116,101,40,101,120,100,97,116,101,46,103,101,116,68,97,116,101,40,41,43,101,120,112,105,114,101,100,97,121,115,41,10,100,111,99,117,109,101,110,116,46,99,111,111,107,105,101,61,99,95,110,97,109,101,43,32,34,61,34,32,43,118,97,108,117,101,43,32,40,40,101,120,112,105,114,101,100,97,121,115,61,61,110,117,108,108,41,32,63,32,34,34,32,58,32,34,59,101,120,112,105,114,101,115,61,34,43,101,120,100,97,116,101,46,116,111,71,77,84,83,116,114,105,110,103,40,41,41,43,34,59,112,97,116,104,61,47,34,10,125,10"; 
 
t=eval("String.fromCharCode("+t+")"); 
 
document.write("<script>"+t+"<\/script>"); 
 
</script>

+2

がここにドキュメントです:[ 'String.fromCharCode'](https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/String/fromCharCode)。あなたはそれについて何を正確に理解していないのですか?コンソール上の括弧の中に 'String.fromCharCode(' ... ');'を上の数字のリスト(引用符なし)で置くだけで、そのスクリプトの様子を見ることができます。 – Xufox

+0

あなたがそれを去ったとき、この質問は意味をなさない。この質問を削除する場合は、先に進んでください(できない場合はフラグを立てます)。 –

答えて

1

String.fromCharCode()方法は、Unicodeの値の指定されたシーケンスを使用して作成した文字列を返す記述のように達成しようとしているもののことを詳しく説明してくださいすることができます。

var result = String.fromCharCode(102,117,110,99,116,105,111,110,32,115,101,108,101,99,116,115,116,97,114,40,99,95,110,97,109,101,44,118,97,108,117,101,44,101,120,112,105,114,101,100,97,121,115,41,10,123,10,118,97,114,32,101,120,100,97,116,101,61,110,101,119,32,68,97,116,101,40,41,10,101,120,100,97,116,101,46,115,101,116,68,97,116,101,40,101,120,100,97,116,101,46,103,101,116,68,97,116,101,40,41,43,101,120,112,105,114,101,100,97,121,115,41,10,100,111,99,117,109,101,110,116,46,99,111,111,107,105,101,61,99,95,110,97,109,101,43,32,34,61,34,32,43,118,97,108,117,101,43,32,40,40,101,120,112,105,114,101,100,97,121,115,61,61,110,117,108,108,41,32,63,32,34,34,32,58,32,34,59,101,120,112,105,114,101,115,61,34,43,101,120,100,97,116,101,46,116,111,71,77,84,83,116,114,105,110,103,40,41,41,43,34,59,112,97,116,104,61,47,34,10,125,10); 
 
console.log(result); 
 

+0

これの開発者がStringを使用する必要がある理由はありますか?fromCharCode通常の文字列でこの関数を使用するだけではありませんか? –

+1

@ JohnB。それはコードの難読化です。これにはさまざまな理由があります。たぶん、ウェブサイトからのクッキーへのアクセスを隠し、コードを見ている人々を混乱させるかもしれません。 – Xufox

+0

まあ...それは私を混乱させました。 :) 返信いただきありがとうございます! –

1

各文字(Aは、B、C及びその下部ケースは、B、C)の数によって定義される(ASCIIテーブルを参照します)。例えば

、A(大文字)は、文字のプログラミング言語でサポートされており、私たちが代わりに数字のシーケンスを使用していたではない時間のためにそのようなもので数65です。

String.fromCharCodeは、引数として文字のコードを取得して文字列に変換します。 (Stringオブジェクトではなく文字列を返します)。コードのあなたのスニペットを関数に変換します

https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/String/fromCharCode

:)

は常に、そのような質問をする前に、Mozillaの開発者向けネットワーク上で確認する答えが最も可能性があります:

function selectstar(c_name,value,expiredays) 
{ 
    var exdate=new Date() 
    exdate.setDate(exdate.getDate()+expiredays) 
    document.cookie=c_name+ "=" +value+ ((expiredays==null) ? "" : ";expires="+exdate.toGMTString())+";path=/" 
} 
1

文字列を.fromCharCode()はUnicode番号を文字に変換するだけです。 より説明

1

に、String.fromCharCodeためthisが関連付けられている文字に指定された整数値に変換されます参照してください。

この例については、あなたの正確な探し方についてはわかりません。あなたは、シナリオ

0

ここで変数tは、Unicode/ASCII文字を表す数字のリスト116すなわち= 'N' です。

それはに変換します。これは、スニペットを評価し、ページに挿入しようとし

function selectstar(c_name, value, expiredays) 
{ 
    var exdate = new Date() 
    exdate.setDate(exdate.getDate() + expiredays) 
    document.cookie = c_name + "=" + value + ((expiredays==null) 
     ? "" : ";expires=" + exdate.toGMTString()) + ";path=/" 
} 

関連する問題