javaScript
是一门解释型语言,浏览器充当解释器。js
执行时,在同一个做用域是先解释再执行。解释的时候会编译function
和var
这两个关键词定义的变量,编译完成后从上往下执行并向变量赋值。ECMASCript
中的一切(包括变量、函数名、操做符)都区分大小写。javascript
变量在第一次用到的时候就设置在内存中,使用变量以前先进行声明。可使用var
关键字来进行变量的声明。
变量命名:变量名包括全局变量,局部变量,类变量,函数参数等等都属于这一类。
变量命名都以类型前缀+有意义的单词组成,能够用驼峰命名法加强变量的可读性。
前缀规范:java
s:表示字符串 n:表示数字 a:表示数组 r:表示正则表达 f:表示函数 g:表示全局变量
建立合法的变量名应该遵循的规则:
第一个字符不能是数字,后面能够跟任意的数字,字母,下划线。node
javascript
会忽略多余的空格,变量之间用逗号隔开。若是声明了一个变量但没有赋值,该变量存在值为undefined
数组
基本数据类型:字符型、数值、布尔 引用数据类型:对象、数组 特殊数据类型:Null、Undefined
Object
类型是一个无序的集合,能够存听任意类型的对象,全部其余对象都继承这个对象,建立Object
类型有两种,一种是使用new
运算符,一种是字面量表示法。var obj = new Object();
浏览器
Object.prototype对象全部构造函数都有一个`prototype`属性,指向一个原型对象。实例obj继承object.prototype的属性和方法
1.对象是一种特殊的数据,拥有属性和方法,`javascript`基于[prototype] 2.对象是方法和属性的集合 3.函数时一种特殊的对象
面向对象三大特征:封装、继承、多态
Array对象:提供对建立任何数据类型和数组的支持 Array数组的3个属性:length、prototype、constructor Array对象方法: concat()、join()、pop()、push、slice()、sort()、splice()、toString()...
null表示还没有存在的对象,经常使用来表示函数企图返回一个不存在的悐 undefined:对象属性不存在,声明了变量未赋值
DOM(文档对象模型)是HTM和XML应用程序的接口(API) DOM表明着被加载到浏览器窗口里的当前网页的模型 BOM用来处理浏览器窗口和框架。
区别:DOM
描述了处理网页的方法和接口,BOM
描述了与浏览器进行交互的方法和接口
HTML将代码分解为DOM节点层次图:app
查找元素:W3C提供了比较方便的定位节点的属性和方法框架
getElementById()获取特定的id元素节点 getElementsByTagName()获取相同元素的节点列表 getElementsByName()获取相同名称的节点列表 getAttribute()获取特定元素节点属性的值 setAttribute()设置特定元素节点属性的值 removeAttribute()移除特定元素节点属性
元素节点属性:函数
nodeName返回一个字符串,内容是节点的名字 nodeType返回一个整数,给定节点类型 nodeValue返回节点的当前值
DOM
操做spa
creatElement(element)建立一个新的元素节点 creatTextNode()建立一个包含给定文本的新文本节点 appendChild()指定节点的最后一个节点列表后添加一个新的子节 insertBefore()将一个给定节点插入到一个给定元素节点的给定子节点的前面 removeChild()从一个给定元素中删除子节点 replaceChild()把一个给定父元素里的一个子节点替换为另一个节点
DOM
经过建立树来表示文档,描述了处理网页内容的方法和接口,从而使开发者对文档的内容和结构具备空前的控制力,用DOM API
能够轻松地删除、添加和替换节点。prototype
DOM 0级事件处理程序:把一个函数赋值给一个事件的处理程序属性 innerText、innerHTML、outerHTML、outerText
DOM 2级事件处理程序:定义了两个方法,用于指定和删除事件处理程序的操做。`addEventListener()`和`removeEventListener()`
BOM
部分
window对象
document对象:其实是window对象的属性,document == window.document为true,是惟一一个既属于BOM又属于DOM的对象
document.lastModified //获取最后一次修改页面的日期的字符串表示 document.referrer //用于跟踪用户从哪里连接过来的 document.title //获取当前页面的标题,可读写 document.URL //获取当前页面的URL,可读写 document.anchors[0]或document.anchors["anchName"] //访问页面中全部的锚 document.forms[0]或document.forms["formName"] //访问页面中全部的表单 document.images[0]或document.images["imgName"] // 访问页面中全部的图像 document.links [0]或document.links["linkName"] //访问页面中全部的连接 document.applets [0]或document.applets["appletName"] //访问页面中全部的Applet document.embeds [0]或document.embeds["embedName"] //访问页面中全部的嵌入式对象 document.write(); 或document.writeln(); //将字符串插入到调用它们的位置
还有location
对象.navigator
对象.screen
对象