如何将字符串中表示的十六进制代码转换为字节,并将其反转为Javascript?
var conv = require('binstring');
var hexstring ='80';
var bytestring = conv(hexstring, {in:'hex', out:'utf8'});
var backtohexstring = conv(bytestring, {in:'utf8', out:'hex'}); // != '80'???
Run Code Online (Sandbox Code Playgroud)
backtohexstring将传入的数据字符串解码为正确的十六进制(我也使用了utf8与字节,因为它看起来像打印到控制台时的传入字符串),所以我很困惑......
我还发现了这两个原生的javascript函数,解码器在我的传入流上工作,但我仍然无法得到十六进制编码...
function encode_utf8( s ) {
return unescape( encodeURIComponent( s ) );
}
function decode_utf8( s ) {
return decodeURIComponent( escape( s ) );
}
Run Code Online (Sandbox Code Playgroud) 当我将beep-23.mp3文件添加到缓存清单时,声音效果不再适用于或脱机.这是一个错误,还是我做错了什么?
音频在html文件中,如下所示:
function playBEEP() { if (navigator.platform == "iPad" || navigator.platform == "iPhone" || navigator.platform == "iPod") { Beep.play(); } }
if (navigator.platform == "iPad" || navigator.platform == "iPhone" || navigator.platform == "iPod") {
var Beep = document.createElement('audio');
Beep.setAttribute('src', 'beep-23.mp3');
}
Run Code Online (Sandbox Code Playgroud)
访问过:
$("#mybutton,#anotherbutton").each(function() {
$(this).bind("touchstart",function(e){
playBEEP();
});
});
Run Code Online (Sandbox Code Playgroud)
<html manifest='index.manifest'> 当beep-23.mp3列出时,音频停止工作...
更新:是否可以使用Web存储而不是缓存清单来存储音频?
我最初收到一个AJAX响应{"B":{"1":"100","3":{"AA":256}},"A":100}并转换为javascript对象:
var jsonOBJ = {};
jsonOBJ = jQuery.parseJSON(data);
Run Code Online (Sandbox Code Playgroud)
未来的响应可以是初始响应的子集或超集.如果服务器上的表值未更改,则停滞数据将替换为空数组.例:
{"B":{"1":"90","2":200,"3":[]}}
{"B":[],"A":20}
每次收到AJAX响应时,对象都会更新为:
jQuery.extend(true, jsonOBJ, jQuery.parseJSON(data));
Run Code Online (Sandbox Code Playgroud)
但是我需要javascript对象来保持未更改的部分,所以我需要最终得到一个与上面的示例响应相同的对象:
jsonOBJ = jQuery.parseJSON('{"B":{"1":"90","2":200,"3":{"AA":256}},"A":20}');
Run Code Online (Sandbox Code Playgroud)
我首选的选项是从转换后的响应中删除空对象.是否存在可以执行此操作的jQuery扩展函数的现有函数或修改?
node.js中的net.socket连接是否存在“可写”或已连接测试?还是我必须做这样的事情:
var client = new net.Socket();
var isConnected = false;
client.connect(5555, 192.168.0.150, function() { isConnected = true; });
client.on('close', function() { isConnected = false; });
Run Code Online (Sandbox Code Playgroud)