2011-01-26 1 views
1

Мне нужно несколько строк кода Javascript, которые будут принимать шестнадцатеричное число (в виде 16-символьной строки) и преобразовать его в две переменные, представляющие высокий и низкий 32 бит 64-битного исходного значения.Javascript Question: Как преобразовать шестнадцатеричное число в высокие и низкие 32-битные значения

Я пытаюсь использовать функцию iTunes COM «ItemByPersistenID» для воспроизведения песни в iTunes с помощью сценария Windows. Но у меня есть только шестнадцатеричное значение PersistentId, и функция принимает только высокие и низкие 32-бит.

Определение функции (из документации ITunes COM-SDK)

функции TrackCollection: ItemByPersistentId (длинный HighID, длинные LowID)

где параметр "HighID" является «Высоким 32 битом 64- разрядный постоянный идентификатор "и" lowID "-" 32 разряда 64-битного постоянного идентификатора ".

ответ

0

Николас имеет хороший ответ. В гипотетическом случае, когда шестнадцатеричная строка не имеет ведущих нулей, вы можете сделать:

var a=hexstr.match(/(.*?)(.{0,8})$/); 
var lo=parseInt(a[2],16); 
var hi=parseInt(a[1],16); 
1

Попробуйте

var loNibble = parseInt(hexValue.substring(8,16) , 16) ; 
var hiNibble = parseInt(hexValue.substring(0,8) , 16) ; 

 Смежные вопросы

  • Нет связанных вопросов^_^