Просмотр полной версии : Как переделать функцию
MoNstrik
13.01.2019, 15:56
Помогите, функция H2CA преобразует хеш в цифры, разбитые по массивам. Как можно написать обратную функцию, чтобы из цифр возвращался хеш
function H2CA(hex) {
var _loc3_ = [];
var _loc1_ = hex.substr(0, 2) != "0x" ? 0 : 2;
while (_loc1_ < hex.length) {
_loc3_.push(parseInt(hex.substr(_loc1_, 2), 16));
_loc1_ = _loc1_ + 2;
}
return _loc3_;
}
caseyryan
13.01.2019, 21:59
Какой хеш тебе нужен?
ZackMercury
14.01.2019, 00:35
caseyryan, не хеш, а хексадесимал строка.
Эта функция парсит строку с hexadecimal числом в массив чисел по байту(2 символа в шестнадцатеричной системе счисления), а автор темы хочет собрать из массива строку обратно.
Но я принципиально не хочу ничего писать за автора темы, по моему, это наглость.
Пускай задача и тривиальная, я смотрю, что автор просто выполняет какой-то проект руками других, даже не пытаясь чему-то учиться.
Не рекомендую вестись, пускай человек научится платить за работу людям.
Вот, к примеру, первые его темы на форуме были про скролл сообщений, ему там помогли, предыдущая тема снова была про скролл сообщений.
Т.е. человек просто копипастит код туда-сюда, даже не пытаясь разобраться. Шот не заработало - идём на форум. Подозреваю, что он не только здесь постит.
function H2CA( hex:String ) {
var _loc3_ = [];
var _loc1_ = hex.substr(0, 2) != "0x" ? 0 : 2;
while (_loc1_ < hex.length) {
_loc3_.push(parseInt(hex.substr(_loc1_, 2), 16));
_loc1_ = _loc1_ + 2;
}
return _loc3_;
}
function CAH2( ints:Array ):String {
var i:int = 0;
var s:String = "" ;
while (i < ints.length) {
s += ints[ i ].toString( 16 );
++i;
}
return s;
}
var hexString:String = "0x55880051";
var t:Array = H2CA( hexString );
trace( "String - "+hexString );
trace( "To Array Int - "+t );
trace( "Back To String - " +("0x"+CAH2( t )) );
Стесняюсь спросить - для чего это нужно ?
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.