美文网首页
小程序字符串相关函数

小程序字符串相关函数

作者: 徐弱西 | 来源:发表于2019-07-25 12:51 被阅读0次

inArray方法可以检查数组元素的内容,以检查它是否与特定值匹配

function inArray(arr, key, val) {
  for (let i = 0; i < arr.length; i++) {
    if (arr[i][key] === val) {
      return i;
    }
  }
  return -1;
}

ArrayBuffer转16进度字符串示例

function ab2hex(buffer) {
  var hexArr = Array.prototype.map.call(
    new Uint8Array(buffer),
    function (bit) {
      return ('00' + bit.toString(16)).slice(-2)
    }
  )
  return hexArr.join('');
}

16进制的字符串转码为普通字符串

function hexCharCodeToStr(hexCharCodeStr) {
    var trimedStr = hexCharCodeStr.trim();
    var rawStr = trimedStr.substr(0,2).toLowerCase() === "0x"? trimedStr.substr(2) : trimedStr;
    var len = rawStr.length;
    if(len % 2 !== 0) {
      alert("Illegal Format ASCII Code!");
      return "";
    }
    var curCharCode;
    var resultStr = [];
    for(var i = 0; i < len;i = i + 2) {
      curCharCode = parseInt(rawStr.substr(i, 2), 16); // ASCII Code Value
      resultStr.push(String.fromCharCode(curCharCode));
    }
    return resultStr.join("");
 }

字符串想转换为二进制的ArrayBuffer

1.先在用在线工具把字符串转换为16进制
2.得到新的字符串再用下面的方法
var hex = '404f42440D0A'
var typedArray = new Uint8Array(hex.match(/[\da-f]{2}/gi).map(function (h) {
        return parseInt(h, 16)
    }))
    console.log(typedArray)
    var buffer = typedArray.buffer // 得到ArrayBuffer了

相关文章

网友评论

      本文标题:小程序字符串相关函数

      本文链接:https://www.haomeiwen.com/subject/sethrctx.html