Namespace declaration statement has to be the very first statement in the script-去除bom头

今天准备测试小程序的签名加密,但是刚引入官方的“加密数据解密算法”文件到项目里,然后为每个文件添加命名空间的时候,不管怎么加都报“Namespace declaration statement has to be the very first statement in the script

苦恼了10分钟才发现原来是bom头导致的。

BOM头是放在UTF-8编码的文件的头部的,占用三个字节(0xEF 0xBB 0xBF,即BOM),用来标识该文件属于UTF-8编码。现在已经有很多软件识别BOM头,但是还有些不能识别BOM头,比如PHP就不能识别BOM头,这也是用记事本编辑UTF-8编码后执行就会出错的原因了。

把文件编码改成不带bom头就可以了

原文地址:https://www.cnblogs.com/phonecom/p/7262382.html