JS学习--基础篇.doc_第1页
JS学习--基础篇.doc_第2页
JS学习--基础篇.doc_第3页
JS学习--基础篇.doc_第4页
JS学习--基础篇.doc_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

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

文档简介

JavaScript 脚本语言在客户端浏览器上执行的脚本: 1. JavaScript 2. VBscript 3 applet . ECMAScript总称 | |- JavaScript |- ActionScript |- ScriptEaseJavaScript语言中包含三个核心:ECMAScript、DOM、BOM在HTML中如何使用JavaScript=*1. 使用标签: 属性:charset(可选)字符集设置、defer(可选执行顺序)值:defer、language(已废除)、src(可选)使用外部的js脚本文件type(必选)类型:值:text/javascript例: javaScript语言 2. 在html标签的事件中,超级链接里。如:点击3. 外部导入方式(推荐):可在任何位置导入,一般在头部导入js文件从上往下执行,要注意加载顺序,两个文件的变量名和方法名要注意是否冲突注意:中间不能加内容JavaScript的语法:=命名规范:1、一定要有意义2、不能以数字开头,不能是系统关键字(如:if,class)JavaScript区分大小写:变量名、函数名、运算符以及其他一切东西都是区分大小写的。变量名和函数名 :第一个单词小写以后每个单词首字母大写 如:aaaBbbCc对象:每个单词首字母都要大写 如:Date();分号: 注意:换行看成语句结束,每行结尾的分号可有可无,最好加分号功能执行语句:加分号 如:var name=zhangsan;结构定义语句:不加分号 如:if() 括号表示代码块脚本注释:/ 单行注释/* 多行注释 */作用:屏蔽代码,写注释文档,调试程序变量:定义:使用var关键字来声明。var 变量名=值 如:var a=10;注意:他和php一样属于弱类型语言。JS变量声明后是在关闭浏览器才释放的,在没关闭之前可以随时使用。而PHP则是在使用完之后就被释放掉 变量的命名规范是:字母数字,$符和下划线构成,但是不可以以数字开始。 变量名不可以使用关键字。 typeof函数获取一个变量的类型:typeof(变量)* undefined - 如果变量是 Undefined 类型的 * boolean - 如果变量是 Boolean 类型的 * number - 如果变量是 Number 类型的 * string - 如果变量是 String 类型的 * object - 如果变量是一种引用类型或 Null 类型的* function五、JavaScript的数据类型:1.Number 类型(int、float、double)注意:计算时还是按 整形和浮点型分开使用八进制数和十六进制数 012浮点数特殊的 Number 值2.String 类型(string char)var s = hello;document.write(s+);document.write(s.length+);/求长度3.Boolean 类型以下为假的情况:false;0;0.0(空字符串)null4.object(object array null)注意:分开处理 5.undefined 没有声明变量6.funtion例:(类型转换)alert(a+10+20); /a1020alert(10+a+20); /10a20alert(10+20+a); /30a整数var a=10;var a=045;var a=0xff;浮点数:浮点数是近似数不能用等号判断var f=10.5;var f=10.55;var f=10.5E+10;字符串:注意:JS中单引号和双引号没有区别,所有转义字符都可以使用( n)+ 连接两个字符串六、运算符和表达式算术运算符号 + - * / % + -+ 加法运算 、 连接字符串% 浮点数也可以取余 如:4%2.7=1.299999999998(没什么意义) 最好用整数4%-3=1 取余的正负号和前面的数有关(一般用不到)赋值运算符号 += -= *= /= %=条件运算符号 = (无符号右移) | & 其他运算符号 ?:七、流程控制顺序结构条件结构 - 分支结构 -选择结构1.单路分支if(bool)2.双路分支if(bool)else3.多路分支if(bool)else if(bool) /注意:else if中间用空格隔开.else用于范围switch(变量) /变量的值最好用整形和字符串case 值1:表达式break;case .case 值2:表达式break;单个值匹配4.嵌套分支if(bool)if()switch()elsefor()while()循环结构while(bool)do-while();for()JavaScript中的函数函数:一段完成“指定功能”的已经“命名”的代码段。函数只有“调用”才能使用到,调用:就是通过名称(可以再声明之前,也可以在声明以后)1.函数名2.参数:根据需要使用参数3.函数体(功能)4.返回值(可选)函数名不加括号时,这个函数名就代表整个函数typeof(函数名) 这里的函数名不加括号,返回function回调函数(函数的参数是函数名)例:function deme()return a+b+fun();alert(demo(1,2,test); /103function test()return 100;使用情况:需要给函数传个功能时我们关心函数的三个方面:1.函数的作用 -决定我去不去使用2.函数的参数 - 决定我怎么用3.函数的返回值 - 决定我调用后如何处理应用:全局变量局部变量:在函数内部声明的变量var test=10;/全局变量,在函数外边声明的变量function demo()test+=20;demo();demo();alert(test); /50JavaScript函数没有默认参数,但可以用下面方式实现默认参数的效果function test(a,b,c)a=a?a:1;b=b?b:2;c=c?c:1;alert(a+-+b+-+c);JavaScript中的可变长度函数可以使用arguments属性如:alert(arguments.length);alert(arguments2);例:function test()var sum=0;for(var i=0;iarguments.length;i+)sum+=argumentsi;return sum;var sum=test(1,2,3,4,5,6,7,8);alert(sum); /36JavaScript对象 JS是基于对象的(所有的都是对象的使用形式)=1.基于对象的操作方式(就是对象的使用形式)就是将一些零散(必须是有相关性的)的属性和方法集中到一起(形成一个对象)使用2.将相关的操作使用一个对象完成,看做是一个整体JavaScriptPHP对象类对象实例对象-对象中存放的内容?一、属性(变量)二、方法(函数)都是和这个对象相关的对象中有的就是属性和方法一、声明对象二、使用对象三、使用系统对象步骤:1.找到对象2.实例化对象3.操作对象对象实例.属性 (取值,赋值)对象实例.属性名对象实例.方法()例:var dt = new Date();var str = 今天是:;str+=(dt.getYear()+年;str+=(dt.getMonth()+1)+月;str+=dt.getDate()+日;str+=dt.getHours()+:;str+=dt.getMinutes()+:;str+=dt.getSeconds()+星期;switch(dt.getDay()case 0:str+=日;break;case 1:str+=一;break;case 2:str+=二;break;case 3:str+=三;break;case 4:str+=四;break;case 5:str+=五;break;case 6:str+=六;break;document.write(str);四、自定义对象的方法(形式上跟PHP声明函数差不多)第一种、例:function Play()var p=new Play();/添加属性p.width=300;p.height=200;/添加方法p.autoplay=function()alert(play.);/调用p.autoplay();还可以用系统提供的Object对象。如:var p=new Object();/添加属性p.width=300;/添加方法p.autoplay()p.autoplay();/访问属性* alert(); 或者 alert(pname);第二种、例:function Play() /也可以加参数var p=new Object();/属性p.width=300;p.height=200;p.num=4;/方法p.authoplay=function()alert(play.);alert(p.num); /或者alert(this.num);return p;var p=Play(); p.autoplay(); /或者Play().autoplay(); 第三种、function Play(width,height,num)this.width=width;this.height=height;this.num=num;this.autoplay=function()this.test=function()var p=new Play(20,39,39);p.autoplay();第四种、JSON格式(快速声明对象的方式) 属性名:值,.如:var p=name:zhangsan,age:10,sex:nan;/遍历对象 for(变量 in 对象)例:var p=new Play(300,300,8);var pro=;for(pro in p)alert(pro); /弹出属性名和方法名alert(ppro); /弹出属性值和函数内容with(对象)所有方法如果不加对象都是,括号对象的方法例:document.write();document.write();document.write();document.write();等同于with(document)write();write();write();write():五、系统内置的对象*Array对象(方法都用熟)*String对象(方法都用熟)var str=abcdefg;和(var str=new String(abcdefg);)用法一样,所以不用new就能调用如:alert(str.length);Number对象(静态对象) 不用new 例:Number.MAX_VALUE*Math对象(静态对象)(方法都用熟)random方法 返回01的数 Math.random();floor方法round方法max方法min方法例:var i=300;var i=Math.max(-6,Math.min(6,i);*Date对象(方法都用熟)Object对象RegExp对象(正则表达式对象)var zz=/a/i; (注意:JS中正则对象这种格式不用加)或 var zz=new RegExp(/a/,i);只有三种模式修正符 g(全文查找出现的所有pattern)、i(忽略大小写)、m(多行查找)例:var str=user name;if(str.match(/S+$/)alert(true);/true;elsealert(false); document文档对象*Global不用加对象就可之直接用(没有对象语法。直接调用其方法)escape 方法返回一个包含了 charstring 内容的字符串值(Unicode 格式)。所有空格、标点、重音符号以及其他非 ASCII 字符都用 %xx 编码代替,其中 xx 等于表示该字符的十六进制数。例如,空格返回的是 %20unescape 方法返回一个包含 charstring 内容的字符串值。所有以 %xx 十六进制形式编码的字符都用 ASCII 字符集中等价的字符代替。 以 %uxxxx 格式(Unicode 字符)编码的字符用十六进制编码 xxxx 的 Unicode 字符代替. parseInt 返回由字符串或浮点型转换得到的整数。但是开始是个非数字的字符串,则返回 “NaN”isNaN 返回一个 Boolean 值,指明提供的值是否是保留值 NaN (不是数字)。 parseFloat 返回由字符串转换得到的浮点数。 isFinite 返回一个 Boolean 值,指明所提供的数字是否是有限的。*eval 检查JScript代码并执行(参数为字符串)(相当于解析器)JS数组的声明与应用=只要批量的数据都需要使用数组声明一、数组的作用(批量处理数据)二、如何声明数组1.快速声明数组var 数组名=元素1,元素2,.;var 数组名=1,2,3,aa,bb,cc,1;alert(arrij);2.声明方式:(自定义)function MyArray()this.length=arguments.length;for(var i=0;iarguments.length;i+)thisi=argumentsi;this.sort=function()var arr=new MyArray(aa,bb,cc,dd);/数组的长度alert(arr.length);arr1=x

温馨提示

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

评论

0/150

提交评论