在HTML中,脚本元素具有可选字符集属性。
它的目的是什么?
它什么时候有用?
发布于 2012-04-21 17:35:43
如果javascript文件的编码方式与页面使用的编码方式不同,则可以使用charset属性告诉浏览器如何解释它。
例如,如果页面使用Latin1,但JS文件是使用UTF-8创建的。
发布于 2012-04-22 00:19:56
charset参数的用途是在未在HTTP协议级别指定编码的情况下指定外部脚本的编码。它并不是要覆盖HTTP标头中的编码信息,它也不会这样做。
当作者无法控制HTTP标头并且标头未指定字符编码时,这很有用。它对于脱机文件也很有用,例如在直接访问而不是通过HTTP服务器访问的网页的本地副本中,这样就不存在HTTP标头。
在实践中,它并不是很有用。如果需要在JavaScript文件中使用非Ascii字符,可以使用UTF8编码。如果您使用带有前导BOM的UTF-8,则BOM可以作为一个有用的指示器,让浏览器推断编码。但另外使用charset=utf-8也没什么坏处。
发布于 2012-04-21 18:11:01
每个JavaScript文件都是一个独立于页面的元素,毕竟您甚至可以从一些远程作者的服务器加载JS,否则这些服务器与您的页面没有任何关系。与任何其他外部元素一样,如果远程服务器由于某种原因或只是为了确保返回错误的字符集,您可以手动指定" charset“。
此外,如果您自己对此JS文件具有写访问权限,则可能希望将所有非ASCII替换为Unicode位置转义-这将保证符号将始终被正确解释,无论在标头中指定了什么编码。一些JS缩略器,比如Google Closure Compiler,可以自动为你做这件事。
https://stackoverflow.com/questions/10257795
复制相似问题