Функция преобразования из ActionScript в Javascript - PullRequest
1 голос
/ 14 января 2012

Я получаю запрос на получение от сервера, но зашифрован с помощью простого алгоритма в Python, поэтому у меня есть этот метод в ActionScript для расшифровки этого:

public static function Decrypt (encrypted : String) : String<br> {<br> var resultArray : ByteArray = new ByteArray();<br> for (var i:int = 0; i < encrypted.length; i++){<br> resultArray.writeByte(encrypted.charCodeAt(i) ^ 0x34);<br> } var resultString : String = resultArray.toString();<br> return resultString;<br> }

Теперь мне нужно реализовать эту функцию в Javascript, но в JS нет класса ByteArray, есть идеи, как мне это сделать? Код и библиотеки приветствуются.

Ответы [ 3 ]

1 голос
/ 14 января 2012

Попробуйте что-то вроде этого:

function Decrypt(encrypted) {
    var resultString = '';
    for (var i = 0; i < encrypted.length; i++) {
        resultString += (encrypted[i] ^ 0x34);
    } 
    return resultString
}
1 голос
/ 14 января 2012
 function Decrypt(encrypted) {
    var resultString = '';
    for (var i = 0; i < encrypted.length; i++) {
        resultString += String.fromCharCode(encrypted.charCodeAt(i) ^ 0x34);
    } 
    return resultString;
 }
0 голосов
/ 14 января 2012

Просто замените его обычным массивом JS ([]) и измените resultArray.writeByte на resultArray.push.Также сделайте resultArray.toString() в resultArray.join('').Весь остальной код должен работать как есть (при условии, что вы отбрасываете такие вещи, как public static, : String, :int и т. Д., Которые недопустимы в JS)

...