多语言展示
当前在线:905今日阅读:176今日分享:34

JavaScript学习指南

针对JavaScript学习,总结一些基本的知识点,让你在学习过程中能全局把握!!!
方法/步骤
1

特殊变量:infinity 无穷大NaN 非数字值Number.MAX_VALUE 最大值Numbe.MIN_VALUE 最小值函数直接量var f=function(x){}对象直接量var p={x:1,y:22};数组直接量var a=[1,2,3];null:表示无值undefined 表示不存在注:运算符将null,undefined看做相等正则表达式直接码;一对斜线之间的文本构成一个正则表达式的直接量;字符串和String对象不一样,字符串typeof 返回string,而String对象返回object字符串转换为对象 new String('wang');eval()方法处理字符串值和String对象的方式不同。若eval()方法将String对象传

2

规范声明:声明全局变量可以不用var ,但是局部变量要var,funciton x(){ b='11222';}b为全局变量,在函数外面可以引用in运算符要求其左边的是一个字符串,或可以转化为字符串,右边是一个对象或数组,若右边是一个对象,则左边的为该对象的属性,则为trueinstanceof,左边是一个对象,右边是对象的类的名字typeof的是数字、字符串或布尔值、返回number、string、boolean对对象、数组和null返回object对函数返回function,如运算数未定义,则返回undefined当Number/String/Boolean等包装对象是返回object,Date/RegExp返回objectnew一个对象,当构造函数没有参数时,可以省略()delete 运算符删除对象的属性,应var定义的变量不能被删除,删除不存在的属性,返回true,返回成功返回true,删除失败返回falsevar my=new Object();my.hire=new Date();//定义变量my.fire=my.hire;delete my.hire;//返回true但是my.fire仍然引用那个date对象with作用域with(obj){x=1;y=2;}

3

函数可以用Function动态定义一个函数var f=new Function('x','y','return x*y');前面的是参数,最后一个是函数的主体相当于function f(x,y){return x*y;}函数直接量var f=function(x,y){return x*y;}将函数赋值给对象的属性,则该属性为对象的方法函数是对象,可以有属性和方案函数都有一个prototype属性function rect(w,h){this.width=w;//定义属性this.heiht=h;}new一个函数对象var f=new rect(1,2);所有对象都是继承Object,所有队形都有constructor属性,他引用的是用来初始化该对象的构造函数var o=new Circle(r);o.constructor==Circle;//true 类名称

4

class是对象的内部类型,为构造函数名称,如:Array对象的class为Array每一个对象都有一个原型对象,该原型对象是在构造函数中产生的,产生时是一个空对象,读属性时,首先检查该对象是否有这个属性,若没有则检查原型对象是否有这个属性,若有则返回设置属性,则是给该对象增加一个属性,而不管原型是否有这个属性function Circle(){}Circle.prototype.pi=3.14;//给原型对象增加属性,对属性对所有的Circle对象都有效String,Date 类型也有原型对对象,我们也可以给String、Date的原型对象增加属性String.prototype.wyc='wyc';String.prototype.endsWith=function(str){}

5

定义类属性和方法(静态的)用类名称Date.parse=function(str){}调用时也要用类名称非静态的:function Circle(){ this.r=1; this.mj=function(){}}或Circle.prototype.wyc='wyc';类型继承:即将该类的原型对象指向父类function Person(){}function Student(){}Student.prototype=new Person();但是该方式有一个缺陷,就是抛弃了Student的constructor属性,继承了超类的constructor属性应该Student.prototype.constructor=Person;

6

数组数组是稀疏的,只有存有对象的才分配空间var a=new Array();a[20]=1;属性:length比最大元素的下标多1join()方法:将数组的元素连成字符串,若没有指定分隔,则用逗号分隔reverse()将颠倒数组元素的顺兴,并返回颠倒后的数组sort()返回排序后的数组concat(arr)返回的数组包含原数组中的元素、并包含参数中的元素slice(start,end)返回数组的一个片段,包括start不包括endsplice(start,www.gzlij.com delcount,insertobj1,insertobj2,...)删除从start开始的delcount各元素,并从start开始插入insetobj1,....push(obj)在尾部加入objpop()删除数组的最后一个元素,并返回该元素unshift(insertobj1,insetobj2,...)将元素插入数组的头部shift()删除数组的第一个元素字符串是值,不是引用web浏览器中JavaScriptwindow对象是在一个窗口中显示html文档,window对象有document属性,还有window属性和self属性,location属性,frames[]数组,navigator对象history对象,screen对象frames[]原始窗口的框架的window对象,document代表当前窗口的document,frames[1].docuement代表第二个窗口的documentDocument对象是html文档document都有一个forms[]数组,每个form都有一个elements[]数组

7

document.write()将把自己的输出插入到脚本在文档中所在的位置,当脚本执行完时,html解析器将继续解析文档,并开始解析document.write()方法生成的文本document.write();的文本将被插入文档,紧接在后,当脚本运行结束时,有hmtl解析器解析从一个事件处理程序中调用document.write();那么就会覆盖当期文档,而不是添加到其中文档对象模型DOM表示文档(html)和访问、操作构成文档的各种元素的应用程序接口DOM树型结构是各种类型的Node对象的树,每个Node都有一个nodeType属性Element:Node.ELEMENT_NODE,则node是一个element对象Text:Node.TEXT_NODEDocument:Node.DOCUMENT_NODEComment:Node.COMMENT_NODEDocumentFragment:Node.DOCUMENT_FRAGMENTAttr:Node.ATTRIBUTE_NODEHTMLDocumentHTMLElement接口定义了id,style,title,lang,dir和className等属性var a=document.createTextNode('this is a new text node');var box=document.createElement('div');box.setAttribute('style','background-color:white;');document.body.appendChild(box);var d=document.createElement('div');d.style.backgroundColor='white';

8

CSS类选择器1:标记名称 如:p,body p {color:red;} 2 id  #myid {}3 自定义   .btn {}   事件addEventListener();removeEventListener();eval()执行字符串中的JavaScript代码

推荐信息