深入理解那该死的BOM】的更多相关文章

BOM(Byte Order Mark),是UTF编码方案里用于标识编码的标准标记,在UTF-16里本来是FF FE,变成UTF-8就成了EF BB BF.这个标记是可选的,因为UTF8字节没有顺序,所以它可以被用来检测一个字节流是否是UTF-8编码的.微软做这种检测,但有些软件不做这种检测, 而把它当作正常字符处理. 微软在自己的UTF-8格式的文本文件之前加上了EF BB BF三个字节, windows上面的notepad等程序就是根据这三个字节来确定一个文本文件是ASCII的还是UTF-8…
javascript 有三部分构成,ECMAScript,DOM和BOM,根据宿主(浏览器)的不同,具体的表现形式也不尽相同,ie和其他的浏览器风格迥异.JavaScript=语法+BOM(含DOM) [关系之理解] BOM>DOM 1 DOM 是 W3C 的标准: [所有浏览器公共尊守的标准]2 BOM 是 各个浏览器厂商根据 DOM 在各自浏览器上的实现: [表现为不同浏览器定义有差别,实现方式不同]3 window 是 BOM 对象,而非 js 对象: 完整的JavaScript是由ECM…
JAVAScript 有三部分构成,ECMAScript,DOM和BOM,根据浏览器的不同,具体的表现形式也不尽相同.我们今天来谈一谈DOM和BOM这俩者之间的差异. 用百科上的来说: 1. DOM是 W3C 的标准; [所有浏览器公共遵守的标准] 2. BOM 是 各个浏览器厂商根据 DOM在各自浏览器上的实现;[表现为不同浏览器定义有差别,实现方式不同] 3. window 是 BOM 对象,而非 js 对象: DOM(文档对象模型)是 HTML 和 XML 的应用程序接口(API). BO…
我只想说,该死的BOM FUKKKKK!!!!!!!!…
1.什么是BOM,BOm有什么作用? BOM和DOM.ES是JavaScript的重要三个组成部分: 其中BOM是专门操作浏览器的API,其实他就是一种兼容性问题,这其中问题比较大就是IE浏览器,谁叫它与众不同呢,记住BOM是他和另外两个部分不一样,另外两个都是有组织定义语法,都统一了,但是BOM就不一样,因为它是操作浏览器的,我们现在市面上有5种浏览器,所以谁也不听谁的,所以就出现了兼容性问题: DOM我们之前讲过它是让js有能力去操作HTML和xml的,间接的操作样式它的语法就是由W3C定义…
BOM提供了很多对象,用于访问浏览器的功能,这些功能与网页内容无关 BOM的核心对象时window,她表示浏览器的一个实例 window的双重角色   1.JS访问浏览器窗口的一个接口  2.ECMAScript规定的Global对象(浏览器环境下),也就是说,在网页中定义的任何一个对象,变量,函数,都是以window为根对象 在JS中,不存在独立的函数,所有的函数都一定是某个对象的方法 定义全局变量和在window对象上定义属性的区别:全局变量的定义无法用delete删除…
网页编码英文译为web page encoding.是在网页中指定其特定的字符编码格式的库. GBK是国家标准GB2312基础上扩容后兼容GB2312的标准. GBK的文字编码是用双字节来表示的.即不论中.英文字符均使用双字节来表示,为了区分中文,将其最高位都设定成1.GBK包括所有中文字符,是国家编码,通用性比UTF8差,只是UTF8占用的数据库比GBK大.  UTF-8:Unicode TransformationFormat-8bit,同意含BOM,但通常不含BOM. 是用以解决国际上字符…
2018年12月17日 一.我们能够对html文档和浏览器做的操作 (一)html文档 增.删.改.可以在html中增加.删除.改动元素 (二)浏览器 地址栏:输入.修改地址 历史记录:前进.后退.跳转到某条历史记录 浏览器:查看浏览器信息 二.DOM和BOM 我们对html文档和浏览器执行的操作,都可以通过JavaScript进行实现.JavaScript提供给我们实现这些操作的方法,就被分别称为DOM和BOM. 在JavaScript中输入代码实现的操作和我们在图形界面点击按钮执行的操作,是…
毫无疑问,我们学习JavaScript是为了完成特定的功能.在最初的JavaScript类型系统中,我们已经分析过JavaScript在页面开发中充当着添加逻辑的角色,而且我们知道JavaScript不仅仅包含基本的语法规范.下面我们就重点看一下JavaScript在页面中干的那些事.总的来说,JavaScript在页面端就干两件事:操作DOM与操作BOM (当然了向Server获取数据也是它的工作,不过获取到数据后还是回来干这两件事,大家对JavaScript最直接的印象应该就是各种光怪陆离的…
调一个项目,最后无法登录了. 排查到最后发现是cookie无法保存会话ID, 工作两年的经验这时候没用上. 开始一以为是PHP.ini的配置错了. 考虑过域名,浏览器问题. 脚本BUG. 最后最后一步步耐心的调试, 是编辑器的问题.这里,推荐大家用NOTEPAD++:这款文件编辑软件. UTF-8 带 BOM 格式的编码会导致SESSION的ID无法写入到浏览器. 带BOM的格式编码,会隐性的在报头之前输出,导致set-cookie设置失效. 万年坑,写此文章来纪念这个坑.…
JavaScript 有三部分构成,ECMAScript,DOM和BOM,根据宿主(浏览器)的不同,具体的表现形式也不尽相同,IE和其他的浏览器风格迥异.对象是JavaScript最重要的API,包含内置对象.外部对象(window对象.dom对象)和自定义对象. 1.BOM全称Browser Object Model,即浏览器对象模型,主要处理浏览器窗口和框架. 2.DOM全称Document Object Model,即文档对象模型,是 HTML 和XML 的应用程序接口(API),遵循W3…
一.前言 在跨平台.跨操作系统或者跨区域之间,经常会涉及到编码的问题,因为前段时间在项目中,遇到了因为编码而产生乱码的问题,以前对编码也是一知半解,所以决定对编码有一个更为深入的了解,因此才有了这篇自己对编码总结的文章. 二.常见编码 1.ASCII:American Standard Code for Information Interchange(美国信息交换标准代码)的缩写,表示所有的大写和小写字母,数字0 到9.标点符号, 以及在美式英语中使用的特殊控制字符,这应该是我们最先接触的编码.…
Window对象: 是整个BOM的核心,所有对象和集合都以某种方式回接到window对象.Window对象表示整个浏览器窗口,但不必表示其中包含的内容. Document对象: 实际上是window对象的属性.这个对象的独特之处是唯一一个既属于BOM又属于DOM的对象.从BOM角度看,document对象由一系列集合构成,这些集合可以访问文档的各个部分 BOM是浏览器对象模型,用来获取或设置浏览器的属性.行为,例如:新建窗口.获取屏幕分辨率.浏览器版本号等.简单的说:bom是浏览器可视窗口操作…
定义 BOM(Byte Order Mark),字节顺序标记,出现在文本文件头部,Unicode编码标准中用于标识文件是采用哪种格式的编码.     介绍 UTF-8 不需要 BOM,尽管 Unicode 标准允许在 UTF-8 中使用 BOM.但不含 BOM 的 UTF-8 才是标准形式,在 UTF-8 文件中放置 BOM 主要是微软的习惯(顺便提一下:把带有 BOM 的小端序 UTF-16 称作「Unicode」而又不详细说明,这也是微软的习惯). 「UTF-8」和「带 BOM 的 UTF-…
BOM:Browser Object Model,即浏览器对象模型,提供了独立于内容的.可以与浏览器窗口进行互动的对象结构. Browser对象:指BOM提供的多个对象,包括:Window.Navigator.Screen.History.Location等. 其中Window对象为顶层对象,其他对象都为Window对象的子对象. 目录 1. Window 对象:表示浏览器打开的窗口,包括获取焦点.改变滚动条.设置定时器等等. 2. Navigator 对象:包含浏览器信息.如:获取浏览器名称.…
前言 JavaScript 是我接触到的第二门编程语言,第一门是 C 语言.然后才是 C++.Java 还有其它一些什么.所以我对 JavaScript 是非常有感情的,毕竟使用它有十多年了.早就想写一篇关于 JavaScript 方面的东西,但是在博客园中,写 JavaScript 的文章是最多的,从入门的学习笔记到高手的心得体会一应俱全,不管我怎么写,都难免落入俗套,所以迟迟没有动笔.另外一个原因,也是因为在 Ubuntu 环境中一直没有找到很好的 JavaScript 开发工具,这种困境直…
一:DOM 文档对象模型(DOM)是表示文档(比如HTML和XML)和访问.操作构成文档的各种元素的应用程序接口(API) DOM是HTML与JavaScript之间沟通的桥梁.   DOM下,HTML文档各个节点被视为各种类型的Node对象. 每个Node对象都有自己的属性和方法,利用这些属性和方法可以遍历整个文档树. 由于HTML文档的复杂性,DOM定义了nodeType来表示节点的类型,有12种节点类型.   节点类型 描述 子节点 1 Element 代表元素 Element, Text…
转(http://www.codeceo.com/article/java-string-ansi-unicode-bmp-utf.html#0-tsina-1-10971-397232819ff9a47a7b7e80a40613cfe1) 概念总结 早期,互联网还没有发展起来,计算机仅用于处理一些本地的资料,所以很多国家和地区针对本土的语言设计了编码方案,这种与区域相关的编码统称为ANSI编码(因为都是对ANSI-ASCII码的扩展).但是他们没有事先商量好怎么相互兼容,而是自己搞自己的,这样…
http://www.cnblogs.com/dreamingbaobei/p/5062901.html 工作多年,一直忙忙碌碌的应用各种技术,现在不忙了,问问自己究竟在做什么,究竟会什么竟答不上来,回想起来工作中经常是被要求多快好省的去实现一个目标,用度娘解决问题,却没时间了解原因,今天就从宏观的角度入手来归纳总结一下.最准确的网页设计思路是把网页分成三个层次,即:结构层(HTML).表示层(CSS).行为层(Javascript).一.HTML.CSS.JavaScript简介及简单分工 1…
转载: 谈谈Unicode编码,简要解释UCS.UTF.BMP.BOM等名词 这是一篇程序员写给程序员的趣味读物.所谓趣味是指可以比较轻松地了解一些原来不清楚的概念,增进知识,类似于打RPG游戏的升级.整理这篇文章的动机是两个问题: 问题一: 使用Windows记事本的"另存为",可以在GBK.Unicode.Unicode big endian和UTF-8这几种编码方式间相互转换.同样是txt文件,Windows是怎样识别编码方式的呢? 我很早前就发现Unicode.Unicode…
像很多新手一样,我知道js有三部分组成,即ECMAScript.DOM.BOM三部分组成,ECMAScript是核心解释器.DOM(Document Object Model)是文档对象模型.BOM(Browser Object Model)是浏览器对象模型,但是我并没有完全理解其中的含义,还是会经不住去问:它们到底是什么?所以今天我和好朋友坐下来好好探讨了一下,来弥补这个小小的漏洞,如果有哪些不对的地方,还望看到的朋友指正: ECMAScript也是一种语言,它本身不包含输入输出定义:ECMA…
被我拖延了将近一个月的javascript事件模型系列终于迎来了第四篇,也是我计划中的最后一篇,说来太惭愧了,本来计划一到两个星期写完的,谁知中间遇到了很多事情,公司的个人的,搞的自己心烦意乱浮躁了一段时间,好在最近这些事情都一件件趋于平息,我也有了精力继续写文章. 这个自定义事件其实是挺让我纠结的,首先自己平时从未使用过,只是有一次遇到一个问题有人指点说可以用自定义事件,才对这个东西有了印象.在网上搜“javascript自定义事件”,发现也有不少文章在写,不过说实话让我佩服的却一篇也没找到,…
http://www.cnblogs.com/yexiaochai/archive/2013/05/28/3102674.html DOM Document Object Model 文档对象模型 一个Window对象有一个document属性引用了Document对象 Document对象表示窗口内容,他是一个巨大的API中的核心对象,他代表操作文档的内容BOM  浏览器对象模型 Browser Object Model  说白点就是window这个东东:表示浏览器的一个实例,是访问浏览器窗口…
BOM结构 用户浏览网页的时候,浏览器会自动创建一些对象,这些对象存放着浏览器窗口的属性和相关信息,也就是大家熟称的BOM.浏览器对象模型是一个层次化的对象集,我们可以通过window对象访问所有对象集.层级关系如下图所示: window对象 window对象表示浏览器中打开窗体,提供关于窗口状态的信息.可以使用window对象访问窗口中的文档,事件以及影响窗口的浏览器特性.同时大家应该知道,在javascript中window对象是全局对象,就像我们C#中的static一样(不知道对不对呃),…
概念: 1.BOM(Browser Object Model): 浏览器对象模型,从名字上就能知道它和浏览器关系密切. 浏览器的非常多行为是通过JavaScript控制的.比如打开新窗体.打开关闭标签页.把网页设为主页或加入到收藏夹等等,这些功能的实现实质上就是对BOM的操作,BOM就是由一系列独立于内容而与浏览器窗体进行交互的对象构成的. 2.DOM(Document Object Model): 文档对象模型,它和文档有关,这里的文档指的是网页.网页是由server发送给client浏览器的…
1.BOM 简介 所谓的 BOM 即浏览器对象模型(Browser Object Model).BOM 赋予了 JS 操作浏览器的能力,即 window 操作.DOM 则用于创建删除节点,操作 HTML 文档.BOM 尚无正式的标准,导致各浏览器对于 BOM 方法的支持各有不同,因此需要具体问题具体对待. 2.window 对象 window 对象是 BOM 的核心,window 对象指当前的浏览器窗口.所有 JS 全局对象.函数以及变量都属于 window 对象.全局变量是 window 对象…
DOM介绍 D(文档)可以理解为整个Web加载的网页文档,O(对象)可以理解为类似window对象只来的东西,可以调用属性和方法,这里我们说的是document对象,M(模型)可以理解为网页文档的树形结构,DOM树由节点构成 节点种类:元素节点.文本节点和属性节点 DOM(文档对象模型)是 HTML 和 XML 的应用程序接口(API).DOM代表着被加载到浏览器窗口里的当前网页:浏览器向我们提供了当前网页的地图(或者说模型),而我们可以通过js去读取这张地图. BOM 主要处理浏览器窗口和框架…
曾经在开始学习javascript的时候,很是不理解闭包的概念.今天想对它详细的剖析. 在说清楚闭包之前,必须先清楚作用域链. 作用域链 我们知道,执行环境是js中最为重要的一个概念.执行环境定义了变量或函数有权访问的的其它数据,决定了它们各自的行为.每个执行环境都有一个与之关联的变量对象,执行环境定义的所有变量和函数都保存在这个对象中,虽然我们编写的代码无法访问这个对象,但是解释器在处理数据时会在后台使用它. 全局执行环境是最外围的一个执行环境.所在的宿主环境不同,表示执行环境的对象也不一样.…
微软的自带记事本程序notepad.exe会给UTF-8编码的文件头加入三个隐藏的字节(即BOM).这是一种很愚蠢的做法.就是为了让编辑器不去猜测文件本身是ASCII码还是UTF-8. 什么是BOM BOM(byte-order mark),即字节顺序标记,它是插入到以UTF-8.UTF16或UTF-32编码Unicode文件开头的特殊标记,用来识别Unicode文件的编码类型.对于UTF-8来说,BOM并不是必须的,因为BOM用来标记多字节编码文件的编码类型和字节顺序(big-endian或l…
理解的javascript自定义事件 被我拖延了将近一个月的javascript事件模型系列终于迎来了第四篇,也是我计划中的最后一篇,说来太惭愧了,本来计划一到两个星期写完的,谁知中间遇到了很多事情,公司的个人的,搞的自己心烦意乱浮躁了一段时间,好在最近这些事情都一件件趋于平息,我也有了精力继续写文章. 这个自定义事件其实是挺让我纠结的,首先自己平时从未使用过,只是有一次遇到一个问题有人指点说可以用自定义事件,才对这个东西有了印象.在网上搜“javascript自定义事件”,发现也有不少文章在写…