code: function getStringType(str) {
    if (null == str) {
      return -1;
    }
  
    if (typeof(str) != 'string') {
      return -1;
    }
  
    if (str.length == 0 || str == "") {
      return -1;
    }
  
    var i = 0;
    if (str.length == 40) {
      for (; i < 40; i++) {
        var c = str.charAt(i);
        if (!isHexChar(c)) {
          break;
        }
      }
    }
    if (i == 40) {
      return 1;  //40 Hex, Address
    }
  
    for (i = 0; i < str.length; i++) {
      var c = str.charAt(i);
      if (!isNumber(c)) {
        break;
      }
    }
    if (i == str.length) {
      return 2;  //Alll Decimal number, BlockNumber
    }
  
    for (i = 0; i < str.length; i++) {
      var c = str.charAt(i);
      if (c > ' ') {
        return 3;   //At least one visible character
      }
    }
  
    return -1;
  }
docs: return 1: address  --- 20Bytes HexString return 2: blockNumber ------ Decimal number return 3: assetName ------ String return other: error