个人心得avascript总结.docx_第1页
个人心得avascript总结.docx_第2页
个人心得avascript总结.docx_第3页
个人心得avascript总结.docx_第4页
个人心得avascript总结.docx_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、javascript 是一种基于对象,和事件驱动的 并具有安全性的脚本语言; 基于对象,动态语言,无需编译,直接解释执行;2、可以放在的地方;A、中,一对之间;B、单独文件中 C、将脚本程序代码作为属性值、javascript3、保留字以及关键字;4、javascript基本语法:4.1 标识:大小写字母,数字,下划线,和美元符号:不能以数字开头;4.2 javascript严格区分大小写4.3 每条语句必须以 分号结束;(不写,一般没事,但是可能会引起不必要的歧义)4.4 多行注释 /* */ 单行注释:/4.5 Function test() Var i=100; /不加var 就会自动变成全局变量,这样在以后会产生冲突;Alert(i);Test();5、数据类型:(数字,boolean,String字符串;日期什么的 是对象了)特殊值:NaN,Infinity,函数isNaN();isFinite();Boolean,取值只能是 true,和false 全是小写逻辑运算符var a=100;var b=0;var c=a|b;alert(c);/返回值是100:就是当两边返回值都是false时,返回第一个或最后一个不为false的值;6、什么值在javascript中是false?逻辑运算中,0,“”,false,null,undefined,NaN均表示false6.1想要赋个默认值:怎么办?function test(e)e=e|new object();if(!=ang)alert(e);test(3);看这里:Var sth=test;/相当于将函数赋给一个变量,这个变量之后可以传参运行了;Alert(sth(100);7、javascript中的系统函数:7.1 编码解码:alert(encodeURI(sht中午啊);处理中文情况;decodeURI,对编码的进行解码;7.2、数值转换;parseInt();/将其他类型转换成数字;原理:从第一个字符开始,如果第一个可以转换就继续向下走,直到不能转,省略后面,如何第一个都不行,就直接返回NaN格式; var a=parseInt(555abc);/返回555;var b=parseInt(cc);/返回NaN;7.3 eval;将其中的参数字符串当做一个javascript表达式执行;var a=alert(fuck you);eval(a);var b=eval(a:thank,b:30);alert(b.b);/为啥没有反应啊!二、javascript的类1、 javascript的内部类;所有类的基类都是 object;可以动态的给类添加方法和属性;/java无法做到的,记住啊!var obj=new Object();obj.sayhello=function()alert(this.msg);obj.msg=haha i can have my class;obj.sayhello();Var n1=new Number(1100);Alert(n1.toString(2);/返回n1的二进制表示形式;var s=ang;s=s.link();alert(s);/ang弹出这个形式;var sss.Alert(typeof sss);/查看数据的类型;Alert(sss.constructor);/查看数据的构造函数;alert(Math.random();Var d=new Date(); alert(d.getFullYear();运行环境提供的一些变量:2、BOM:浏览器对象模型2.1 window 对象主要方法;2.1.1 弹出窗口;2.2 定时器函数:function say()return function ()alert(fuck);function funhello()window.setTimeout(say(),3000);要求第一个参数只能是函数,或者字符串,所以,就返回一个匿名函数供调用;Window.history;/可以直接 写history/所有对象默认都是在window下面的;三、DOM对象:Location对象,可以访问地址栏里的内容例子如何 使用这些对象,检查浏览器版本,提高兼容性;2 dom 概述:所有的dom节点都有的一些东西:想要页面加载完成之后再执行代码window.onload=function ()这里:document.documentElement;得到html那个节点:如何得到body节点?Var body=root.lastChild;Body.appendChild(newNode);所有节点都有一个parentNode3、javascript操作对DOM元素进行 增删改查;查找:document.getElementById();动态添加元素:直接往document的元素上节点,每次添加一个就会进行一次刷新,影响效果,考虑使用createDocumentFragment();对表格操作:提供的方法操作table;查找table中的 某个单元格:Var cell=table.tBodies0.rows1.cells0;(浏览器解析之后变成的一套API,比较保险)使用xhtml DOM的table api 来创建表格:访问DOM对象的属性:Style 属性:只要浏览器一解析,就会给每个元素增加个style属性,这个是个只读属性四、事件驱动(注意浏览器不同所造成的差异);1、匹配不同浏览器:Function test(e)e=e|event2、绑定多个处理函数:function initEvent()/if(document.attachEvent)$(msg).attachEvent(onclick,shout);$(msg).attachEvent(onclick,shout2);/IE独有的 绑定多个监听事件方法;/*else$(msg).addEventListener(click,shout);$(msg).addEventListener(click,shout2);/*/3、ie和firefox差别:DOM标准中会把事件对象作为参数传递给函数,而IE则可以通过window.event来获取;事件对象所具有的属性,比较重要的有:preventDefault();(firefox采用)IE的 有4.ie和Firefox共有的特性:问题:IE与Firfox下阻止鼠标右键事件:FunctionstopContextMenu()document.oncontextmenu=function(e)e.preventDefault();5、键盘事件:其他事件:表单不提交:五、 javascript的面向对象的特性:1.容易混淆的概念;function Animal(name) =name;this.age=0;var a1=Animal;/alert();输出函数;var a2=Animal();/输出 undefinedvar a3=new Animal();/输出 objectvar a4=new Animal;/输出 object2、函数的可变参数:(firefox下查看:console.dir(/info)(arguments);)3、javascript中一切都是对象,函数也是一种特殊的对象,类型为Function;Var s1=function()return 123;,alert(s1.constructor);Var num1=12; alert(num1.constructor)还可以这样执行函数:Var func1=new Function(“alert(123)”); func1();/执行函数了;4、闭包:定义函数里面嵌套函数,就是闭包; Var func1=function()Var d=0;Func2=function() D+;Var func3=func2(); func3();为什么可以使用d,就是因为javascript中的闭包机制,使得d不会被消除掉;以后可以使用闭包实现封装5,(重点) 函数的作用域及this5.1 call,和apply的用法和区别,(都是用来绑定函数,就是传参方式不同);想让其他对象,使用自己定义的函数呢?(直接用call来绑定一个作用域,)5.2 访问对象属性,B3.v=ang;等价于b3v=ang; 怪异的合法:Var c=1 1:45; alert(c“1 1”);5.3、遍历对象中的元素function showInTurn()for(var key in window)document.getElementById(msg).innerHTML+=(key+:+windowkey+);5.4动态删除对象中的成员delete b3.v;/动态删除对象上的成员5.5 给所以的Number的实例都加上一个方法?Var d=new Number(5);Ntotype.add=fun

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论