javascript:String到Byte[]到String

javascript:String到Byte[]到String,java,javascript,string,bytearray,Java,Javascript,String,Bytearray,我第一次用java编写我的应用程序,现在应该用javascript编写,在javascript中处理字符串和数组字节以及在两个方向上重新编写转换方法时遇到了一些问题。 以下是我的java代码: public String VerifyPIN(String PIN, String successCb, String errorCb) { byte[] AID = new byte[] {(byte)0xA0,(byte)0x00,(byte)0x00,(byte)0x0

我第一次用java编写我的应用程序,现在应该用javascript编写,在javascript中处理字符串和数组字节以及在两个方向上重新编写转换方法时遇到了一些问题。 以下是我的java代码:

    public String VerifyPIN(String PIN, String successCb, String errorCb)   {
        byte[] AID = new byte[] {(byte)0xA0,(byte)0x00,(byte)0x00,(byte)0x00,(byte)0x04,(byte)0x10,(byte)0x10,(byte)0x11};
        byte[] tmpPIN = new byte[] {(byte)0x00, (byte)0x20, (byte)0x00, (byte)0x80, (byte)0x08, (byte)0x00, (byte)0x00, (byte)0x00, (byte)0x00, (byte)0x00, (byte)0x00, (byte)0x00, (byte)0x00};
        System.arraycopy(PIN.getBytes(), 0, tmpPIN, 5, PIN.getBytes().length);

        byte[] output = exchange(AID, tmpPIN);
        String result = StringUtils.bytesToString(output);

        if ("90 00".equals(result.trim())) {
            //onSuccess()
        } else {
            //onError
        }

        return result.trim();
    }

    public String bytesToString(byte[] bytes) {
        if (bytes != null)
        {
            StringBuffer sb = new StringBuffer();
            for (byte b : bytes) {
                sb.append(String.format("%02x ", b & 0xFF));
            }
            return sb.toString();
        }
        else {
            return "N/A";
        }

    }
那么如何通过TestOstring和VerifyPIN将这两个方法转换为javascript呢

提前感谢您

您可以使用

function string2Bin(str) {
  var result = [];
  for (var i = 0; i < str.length; i++) {
    result.push(str.charCodeAt(i));
  }
  return result;
}

function bin2String(array) {
  return String.fromCharCode.apply(String, array);
}

string2Bin('foo'); // [102, 111, 111]
bin2String(string2Bin('foo')) === 'foo'; // true
函数string2Bin(str){
var结果=[];
对于(变量i=0;i
祝你好运,你可以用

function string2Bin(str) {
  var result = [];
  for (var i = 0; i < str.length; i++) {
    result.push(str.charCodeAt(i));
  }
  return result;
}

function bin2String(array) {
  return String.fromCharCode.apply(String, array);
}

string2Bin('foo'); // [102, 111, 111]
bin2String(string2Bin('foo')) === 'foo'; // true
函数string2Bin(str){
var结果=[];
对于(变量i=0;i

祝你好运

对于第二种方法,下面是转换:

function bytesToString(bytes) {
  var result = "";
  for (var i = 0; i < bytes.length; i++) {
    result += String.fromCharCode(parseInt(bytes[i], 2));
  }
  return result;
}
函数bytesToString(字节){
var结果=”;
对于(变量i=0;i
对于第二种方法,以下是转换:

function bytesToString(bytes) {
  var result = "";
  for (var i = 0; i < bytes.length; i++) {
    result += String.fromCharCode(parseInt(bytes[i], 2));
  }
  return result;
}
函数bytesToString(字节){
var结果=”;
对于(变量i=0;i
Riahi-因此它不是一项“免费编写代码”服务。我们将帮助您解决在编写自己的程序时遇到的问题,但我们不会帮您完成工作。@StephenC:让我们等一等,找个时间will@AndreaLigios-不,我们一分钟也不要等了。这不是SO应该使用的方式。@StephenC:-1表示不获取sarcasm@AndreaLigios:-1用于期望人们从ASCII文本中读取您的语调-1因为没有使用普通的笑脸习惯来表示“幽默”。Riahi-所以这不是一个“免费编写代码”的服务。我们将帮助您解决在编写自己的程序时遇到的问题,但我们不会帮您完成工作。@StephenC:让我们等一等,找个时间will@AndreaLigios-不,我们一分钟也不要等了。这不是SO应该使用的方式。@StephenC:-1表示不获取sarcasm@AndreaLigios:-1用于期望人们从ASCII文本中读取您的语调-1不使用正常的笑脸习惯来表示“幽默”。