例如,使用indexOf('ÿ')// char for Unicode 255
不起作用。可能是因为indexOf()
需要Unicode小于127,可能?
无论如何,我有一个来自Ajax二进制文件的大字符串数组。我需要找到每个字节序列的出现,假设序列是:255,251,178。然后应将每个出现的位置(序列中255的位置)推入数组中以创建:arr[0]=1st sequence occurrences location
arr[1]=2nd sequence occurrences location
等。通过字符串的搜索应该能够从指定的偏移量开始。我的问题是我甚至无法让indexOf()
检测到unicode 255的char。
非常感谢任何帮助。
专利
答案 0 :(得分:1)
如果不评估算法的优点,您最好定义像'\u00FF'
这样的unicode字符
其次,indexOf会找到你想要的任何(Unicode)字符,没有“找不到少于127”这样的东西。
答案 1 :(得分:0)
它对我有用(使用Node.js):
> var a = '\u00FF';
> console.log(a);
ÿ
> var string="hello, "+a+"there!";
> console.log(string);
hello, ÿthere!
> console.log(string.indexOf(a));
7
> console.log(string.indexOf("ÿ"));
7
>
另一方面,你一直提到“字节”。 Javascript字符串是Unicode字符,通常每个字节存储多个字节。而且你说“Ajax二进制” - 那应该是什么意思?大多数/所有Ajax结果将是文本格式,而不是二进制。 Javascript不能很好地处理二进制数据。
你是否可以发布一些关于你想要做什么的更多细节?