SlideShare a Scribd company logo
1 of 17
JavaScript – 深入了解
刘遵强   | liuzunqiang@staff.hexun.com
数组基础
数组的使用
 • 定义
   – var arr=[12, 5, 8, 9];
   – var arr=new Array(12, 5, 8, 9);
   – 没有任何差别, [] 的性能略高,因为代码短
 • 获取、设置
   – arr[ 序号 ]
数组的属性
 • length
   – 既可以获取,又可以设置
   – 例子:快速清空数组

                         Undefined Null Boolean Number String
添加、删除元素
数组的方法
 • 添加
  – push( 元素 ) ,从尾部添加
  – unshift( 元素 ) ,从头部添加
 • 删除
  – pop() ,从尾部弹出
  – shift() ,从头部弹出
排序、转换
排序
 • sort([ 比较函数 ]) ,排序一个数组
   – 排序一个字符串数组
   – 排序一个数字数组
转换类
 • concat( 数组 2)
   –   连接两个数组
 • join( 分隔符 )
   – 用分隔符,组合数组元素,生成字符串
   – Splice() 字符串转数组
splice
  • splice( 开始 , 长度 , 元素… )
  • 先删除,后插入
删除
  • splice( 开始 , 长度 )
插入
  • splice( 开始 , 0, 元素… )
替换
数组使用原则:数组中应该只存一种类型的变量
JS 事件初步 (1)
this 关键字
 • 当前发生事件的元素
   – 例子:输入框高亮
   – onfocus 、 onblur
this 注意事项
 • 只有事件处理函数中才能用 this
 • 不能用 this :行间、定时器中、非事件处理函数、绑
   定
事件处理函数
 • 添加、替换、删除
 • 不能添加多个,不然会相互覆盖— 事件绑定
                  —
JS 事件初步 (2)
事件绑定
 • IE 方式
   – attachEvent( 事件名称 , 函数 ) ,绑定事件处理函数
   – detachEvent( 事件名称 , 函数 ) ,解除绑定
 • DOM 方式
   – addEventListener( 事件名称 , 函数 , 捕获 )
   – removeEventListener( 事件名称 , 函数 , 捕获 )
 • 绑定匿名函数,会无法删除
 • 绑定事件和 this
课程应用
多图片展开 ( 静态 )
 • 层级处理
3D 图片轮换 ( 静态 )
 • ?
数组常用方法
this 的用法
动态绑定事件处理函数
本课练习 (1)
基础
 • 当前输入框高亮显示
 • 数组练习:各种数组方法的使用
 • 事件练习:封装兼容性添加、删除事件的函数
本课练习 (2)
选做
 • 评分系统
2012 年 08 月 02 日

More Related Content

What's hot

实验二 用Mathmatica软件求极限
实验二  用Mathmatica软件求极限实验二  用Mathmatica软件求极限
实验二 用Mathmatica软件求极限guestfe33f0e
 
Scala再探
Scala再探Scala再探
Scala再探afeihehe
 
Java 開發者的函數式程式設計
Java 開發者的函數式程式設計Java 開發者的函數式程式設計
Java 開發者的函數式程式設計Justin Lin
 
lambda/closure – JavaScript、Python、Scala 到 Java SE 7
lambda/closure – JavaScript、Python、Scala 到 Java SE 7lambda/closure – JavaScript、Python、Scala 到 Java SE 7
lambda/closure – JavaScript、Python、Scala 到 Java SE 7Justin Lin
 
5, initialization & cleanup
5, initialization & cleanup5, initialization & cleanup
5, initialization & cleanupted-xu
 
Pytables
PytablesPytables
Pytablesgowell
 
详解AS3的内存管理机制,有效释放FLASH内存,减少资源占用
详解AS3的内存管理机制,有效释放FLASH内存,减少资源占用详解AS3的内存管理机制,有效释放FLASH内存,减少资源占用
详解AS3的内存管理机制,有效释放FLASH内存,减少资源占用FLASH开发者交流会
 
Ecma script3
Ecma script3 Ecma script3
Ecma script3 gniavaj
 
Hands on data analysis 101
Hands on data analysis 101Hands on data analysis 101
Hands on data analysis 101FEG
 

What's hot (15)

实验二 用Mathmatica软件求极限
实验二  用Mathmatica软件求极限实验二  用Mathmatica软件求极限
实验二 用Mathmatica软件求极限
 
Scala再探
Scala再探Scala再探
Scala再探
 
Appendix B 範例
Appendix B 範例Appendix B 範例
Appendix B 範例
 
Java 開發者的函數式程式設計
Java 開發者的函數式程式設計Java 開發者的函數式程式設計
Java 開發者的函數式程式設計
 
Study research in April
Study research in AprilStudy research in April
Study research in April
 
lambda/closure – JavaScript、Python、Scala 到 Java SE 7
lambda/closure – JavaScript、Python、Scala 到 Java SE 7lambda/closure – JavaScript、Python、Scala 到 Java SE 7
lambda/closure – JavaScript、Python、Scala 到 Java SE 7
 
5, initialization & cleanup
5, initialization & cleanup5, initialization & cleanup
5, initialization & cleanup
 
Pytables
PytablesPytables
Pytables
 
Ch9 教學
Ch9 教學Ch9 教學
Ch9 教學
 
详解AS3的内存管理机制,有效释放FLASH内存,减少资源占用
详解AS3的内存管理机制,有效释放FLASH内存,减少资源占用详解AS3的内存管理机制,有效释放FLASH内存,减少资源占用
详解AS3的内存管理机制,有效释放FLASH内存,减少资源占用
 
Ecma script3
Ecma script3 Ecma script3
Ecma script3
 
Ppt 120-126
Ppt 120-126Ppt 120-126
Ppt 120-126
 
Hands on data analysis 101
Hands on data analysis 101Hands on data analysis 101
Hands on data analysis 101
 
Ch12 教學
Ch12 教學Ch12 教學
Ch12 教學
 
Appendix B 教學
Appendix B 教學Appendix B 教學
Appendix B 教學
 

Viewers also liked

áLbum de fotografías
áLbum de fotografíasáLbum de fotografías
áLbum de fotografíasmaarta90
 
Published animated redox and antioxidant mechanisms
Published animated redox and antioxidant mechanismsPublished animated redox and antioxidant mechanisms
Published animated redox and antioxidant mechanismsPRAFUL KAMBLE
 
2 Minute Film Intro Actors and Location Update
2 Minute Film Intro Actors and Location Update2 Minute Film Intro Actors and Location Update
2 Minute Film Intro Actors and Location Updatekannkarry
 
Extraccion del acero
Extraccion del aceroExtraccion del acero
Extraccion del acero1d2lov
 
Nofx
NofxNofx
Nofxablan
 
Beyond The Hype Refresher
Beyond The Hype RefresherBeyond The Hype Refresher
Beyond The Hype RefresherBarrie Bramley
 
Presentación proyecto iava.
Presentación proyecto iava.Presentación proyecto iava.
Presentación proyecto iava.graciela1007
 
Ideology, Representation, Star image
Ideology, Representation, Star imageIdeology, Representation, Star image
Ideology, Representation, Star imageGeorge Moore
 
Study_Pricing_Digital_Call_Options
Study_Pricing_Digital_Call_OptionsStudy_Pricing_Digital_Call_Options
Study_Pricing_Digital_Call_OptionsBruce Haydon, PMP
 
Unidad1
Unidad1Unidad1
Unidad1Carmen
 
Question 4 & 5
Question 4 & 5Question 4 & 5
Question 4 & 5kannkarry
 
EL SOFTWARE COMO DERECHO DE PROPIEDAD INTELECTUAL
EL SOFTWARE COMO DERECHO DE PROPIEDAD INTELECTUALEL SOFTWARE COMO DERECHO DE PROPIEDAD INTELECTUAL
EL SOFTWARE COMO DERECHO DE PROPIEDAD INTELECTUALMajitoOlaya
 
Projekt informatike
Projekt informatike Projekt informatike
Projekt informatike Konti Binjaku
 

Viewers also liked (20)

áLbum de fotografías
áLbum de fotografíasáLbum de fotografías
áLbum de fotografías
 
Published animated redox and antioxidant mechanisms
Published animated redox and antioxidant mechanismsPublished animated redox and antioxidant mechanisms
Published animated redox and antioxidant mechanisms
 
2 Minute Film Intro Actors and Location Update
2 Minute Film Intro Actors and Location Update2 Minute Film Intro Actors and Location Update
2 Minute Film Intro Actors and Location Update
 
Extraccion del acero
Extraccion del aceroExtraccion del acero
Extraccion del acero
 
Actividad de metodología
Actividad de metodologíaActividad de metodología
Actividad de metodología
 
Nofx
NofxNofx
Nofx
 
Beyond The Hype Refresher
Beyond The Hype RefresherBeyond The Hype Refresher
Beyond The Hype Refresher
 
Presentación proyecto iava.
Presentación proyecto iava.Presentación proyecto iava.
Presentación proyecto iava.
 
Ideology, Representation, Star image
Ideology, Representation, Star imageIdeology, Representation, Star image
Ideology, Representation, Star image
 
Skripsi susanti UNSRI 2001
Skripsi susanti UNSRI 2001Skripsi susanti UNSRI 2001
Skripsi susanti UNSRI 2001
 
Study_Pricing_Digital_Call_Options
Study_Pricing_Digital_Call_OptionsStudy_Pricing_Digital_Call_Options
Study_Pricing_Digital_Call_Options
 
Estado de situación de la energía eléctrica en CRD y RT
Estado de situación de la energía eléctrica en CRD y RTEstado de situación de la energía eléctrica en CRD y RT
Estado de situación de la energía eléctrica en CRD y RT
 
Mgt195 final
Mgt195 finalMgt195 final
Mgt195 final
 
Unidad1
Unidad1Unidad1
Unidad1
 
Question 4 & 5
Question 4 & 5Question 4 & 5
Question 4 & 5
 
Introducción
IntroducciónIntroducción
Introducción
 
EL SOFTWARE COMO DERECHO DE PROPIEDAD INTELECTUAL
EL SOFTWARE COMO DERECHO DE PROPIEDAD INTELECTUALEL SOFTWARE COMO DERECHO DE PROPIEDAD INTELECTUAL
EL SOFTWARE COMO DERECHO DE PROPIEDAD INTELECTUAL
 
Ccilc apresentacao ch
Ccilc   apresentacao chCcilc   apresentacao ch
Ccilc apresentacao ch
 
Projekt informatike
Projekt informatike Projekt informatike
Projekt informatike
 
Deep wed
Deep wedDeep wed
Deep wed
 

Similar to Javascript 培训第四节 深入了解

Ecma script edition5-小试
Ecma script edition5-小试Ecma script edition5-小试
Ecma script edition5-小试lydiafly
 
Java SE 8 的 Lambda 連鎖效應 - 語法、風格與程式庫
Java SE 8 的 Lambda 連鎖效應 - 語法、風格與程式庫Java SE 8 的 Lambda 連鎖效應 - 語法、風格與程式庫
Java SE 8 的 Lambda 連鎖效應 - 語法、風格與程式庫Justin Lin
 
2, object oriented programming
2, object oriented programming2, object oriented programming
2, object oriented programmingted-xu
 
潜力无限的编程语言Javascript
潜力无限的编程语言Javascript潜力无限的编程语言Javascript
潜力无限的编程语言Javascriptjay li
 
Ecmascript
EcmascriptEcmascript
Ecmascriptjay li
 
Javascript OOP
Javascript OOPJavascript OOP
Javascript OOP凯 高
 
Javascript share
Javascript shareJavascript share
Javascript shareXu Mac
 
02 Objective-C
02 Objective-C02 Objective-C
02 Objective-CTom Fan
 
异步编程与浏览器执行模型
异步编程与浏览器执行模型异步编程与浏览器执行模型
异步编程与浏览器执行模型keelii
 
Java Script 引擎技术
Java Script 引擎技术Java Script 引擎技术
Java Script 引擎技术bigqiang zou
 
Javascript 培训第二节 基础上
Javascript 培训第二节 基础上Javascript 培训第二节 基础上
Javascript 培训第二节 基础上liziqi7
 
C++中级培训胶片
C++中级培训胶片C++中级培训胶片
C++中级培训胶片ff1
 
快速了解PostgreSQL
快速了解PostgreSQL快速了解PostgreSQL
快速了解PostgreSQL正中 周
 
使用 Eloquent ORM
使用 Eloquent ORM使用 Eloquent ORM
使用 Eloquent ORMShengyou Fan
 
12, string
12, string12, string
12, stringted-xu
 

Similar to Javascript 培训第四节 深入了解 (20)

Ecma script edition5-小试
Ecma script edition5-小试Ecma script edition5-小试
Ecma script edition5-小试
 
Sun java
Sun javaSun java
Sun java
 
Java SE 8 的 Lambda 連鎖效應 - 語法、風格與程式庫
Java SE 8 的 Lambda 連鎖效應 - 語法、風格與程式庫Java SE 8 的 Lambda 連鎖效應 - 語法、風格與程式庫
Java SE 8 的 Lambda 連鎖效應 - 語法、風格與程式庫
 
前端测试
前端测试前端测试
前端测试
 
前端测试
前端测试前端测试
前端测试
 
2, object oriented programming
2, object oriented programming2, object oriented programming
2, object oriented programming
 
潜力无限的编程语言Javascript
潜力无限的编程语言Javascript潜力无限的编程语言Javascript
潜力无限的编程语言Javascript
 
Ecmascript
EcmascriptEcmascript
Ecmascript
 
Javascript OOP
Javascript OOPJavascript OOP
Javascript OOP
 
Javascript share
Javascript shareJavascript share
Javascript share
 
02 Objective-C
02 Objective-C02 Objective-C
02 Objective-C
 
LabView with Lego NXT
LabView  with Lego NXTLabView  with Lego NXT
LabView with Lego NXT
 
异步编程与浏览器执行模型
异步编程与浏览器执行模型异步编程与浏览器执行模型
异步编程与浏览器执行模型
 
Java Script 引擎技术
Java Script 引擎技术Java Script 引擎技术
Java Script 引擎技术
 
Js培训
Js培训Js培训
Js培训
 
Javascript 培训第二节 基础上
Javascript 培训第二节 基础上Javascript 培训第二节 基础上
Javascript 培训第二节 基础上
 
C++中级培训胶片
C++中级培训胶片C++中级培训胶片
C++中级培训胶片
 
快速了解PostgreSQL
快速了解PostgreSQL快速了解PostgreSQL
快速了解PostgreSQL
 
使用 Eloquent ORM
使用 Eloquent ORM使用 Eloquent ORM
使用 Eloquent ORM
 
12, string
12, string12, string
12, string
 

Javascript 培训第四节 深入了解

  • 2. 刘遵强 | liuzunqiang@staff.hexun.com
  • 3.
  • 4. 数组基础 数组的使用 • 定义 – var arr=[12, 5, 8, 9]; – var arr=new Array(12, 5, 8, 9); – 没有任何差别, [] 的性能略高,因为代码短 • 获取、设置 – arr[ 序号 ] 数组的属性 • length – 既可以获取,又可以设置 – 例子:快速清空数组 Undefined Null Boolean Number String
  • 5. 添加、删除元素 数组的方法 • 添加 – push( 元素 ) ,从尾部添加 – unshift( 元素 ) ,从头部添加 • 删除 – pop() ,从尾部弹出 – shift() ,从头部弹出
  • 6. 排序、转换 排序 • sort([ 比较函数 ]) ,排序一个数组 – 排序一个字符串数组 – 排序一个数字数组 转换类 • concat( 数组 2) – 连接两个数组 • join( 分隔符 ) – 用分隔符,组合数组元素,生成字符串 – Splice() 字符串转数组
  • 7. splice • splice( 开始 , 长度 , 元素… ) • 先删除,后插入 删除 • splice( 开始 , 长度 ) 插入 • splice( 开始 , 0, 元素… ) 替换 数组使用原则:数组中应该只存一种类型的变量
  • 8. JS 事件初步 (1) this 关键字 • 当前发生事件的元素 – 例子:输入框高亮 – onfocus 、 onblur this 注意事项 • 只有事件处理函数中才能用 this • 不能用 this :行间、定时器中、非事件处理函数、绑 定 事件处理函数 • 添加、替换、删除 • 不能添加多个,不然会相互覆盖— 事件绑定 —
  • 9. JS 事件初步 (2) 事件绑定 • IE 方式 – attachEvent( 事件名称 , 函数 ) ,绑定事件处理函数 – detachEvent( 事件名称 , 函数 ) ,解除绑定 • DOM 方式 – addEventListener( 事件名称 , 函数 , 捕获 ) – removeEventListener( 事件名称 , 函数 , 捕获 ) • 绑定匿名函数,会无法删除 • 绑定事件和 this
  • 10. 课程应用 多图片展开 ( 静态 ) • 层级处理 3D 图片轮换 ( 静态 ) • ?
  • 12.
  • 13.
  • 14. 本课练习 (1) 基础 • 当前输入框高亮显示 • 数组练习:各种数组方法的使用 • 事件练习:封装兼容性添加、删除事件的函数
  • 16.
  • 17. 2012 年 08 月 02 日