ここでは、私が勉強しているJS暗号化スクリプトの抜粋を示します。JavaScript暗号化スクリプトで使用されるわかりにくい文字
function permutationGenerator(nNumElements) {
this.nNumElements = nNumElements;
this.antranspositions = new Array;
var k = 0;
for (i = 0; i < nNumElements - 1; i++)
for (j = i + 1; j < nNumElements; j++)
this.antranspositions[ k++ ] = (i << 8) | j;
// keep two positions as lo and hi byte!
this.nNumtranspositions = k;
this.fromCycle = permutationGenerator_fromCycle;
}
誰よりもダブル少ない兆し< <、ならびに単一のパイプを使用することを説明することができます| ?
後のスクリプトでは、記号よりも2倍も大きく>>、また単一のアンパサンド&も発生します。
function permutationGenerator_fromCycle(anCycle) {
var anpermutation = new Array(this.nNumElements);
for (var i = 0; i < this.nNumElements; i++) anpermutation[i] = i;
for (var i = 0; i < anCycle.length; i++) {
var nT = this.antranspositions[anCycle[i]];
var n1 = nT & 255;
var n2 = (nT >> 8) & 255; // JC
nT = anpermutation[n1];
anpermutation[n1] = anpermutation[n2];
anpermutation[n2] = nT;
}
return anpermutation;
}
私は、単一の<か>とし、& &論理と論理もちろんよく知って|| 。
思考?
に等しいので、あなたは '2^N 'は、ありません「2 XOR n「は2をn乗」を意味することを明確にしたい場合がありますすることができます"コメントのために –
ありがとう、それも考えていない。それをMath.powに変更しました(...)これをより明確にするために – Zenon
これは古いスレッドですが、非常に役に立つ回答です。ありがとう! – SwankyLegg