页面行为:javaScript

javaScript:通用、跨平台、中立于厂商的脚本语言;解释型的,按出现的顺序来执行标签;客户端的(嵌入网页中、依赖于客户端);弱语言类型(定义变量时对数据类型和初始化没有要求);基于原型的面向对象语言。
javaScript功能:对标签的全面控制(增、删、改);嵌入动态文本;响应网页事件;处理Cookies;校验用户输入数据;检测浏览器。

1、面向对象  对象的原型是对象;原型的对象是原型

对象的实例化《对象定义(定义类)==>prototype(类模版)==>对象实例》

工厂方式《通过方法(new一个Object对象,再添加对象的属性和方法)产生对象》

构造方法方式《类中设置属性和方法;再通过new类来产生对象》

原型方式《定义一个空类,用类的prototype来设置属性和方法;通过new类来产生对象》

适用型《构造的部分设置私有的属性和方法,原型部分设置共用的属性和方法;用new产生对象》

对象的继承

 

       对象冒充《冒充——>继承——>删除冒充——>添加新属性和方法》

       call()方式《父类.call(this(对象),参数列表)——>添加新属性和方法》

       apply()方式《父类apply(this,参数数组)——>添加新属性和方法》

       原型链《定义对象——>对象调用prototype添加新属性和方法》

2、优先级
按出现的顺序来执行标签
可以利用script标记的内联【<script type="text/javaScript">javaScript代码</script>】和外联【<script type="text/javaScript" src="外部文件.js"></script>】,事件,伪代码【<a href="javaScript:alert("超人")">伪代码</a>】来实现javascript的引用。
3、技术体系
javaScript核心语法(ECMAScript) 【】《ECMAScript指定的js的数据类型、变量、运算符、语句等》

变量数据类型 《变量的定义使用关键字【var】;有5种原始的数据类型3种引用数据类型》

【undefined】《函数、变量没指定值时默认》

【null】《undefined的派生》

【boolean】《“==”只是比较内容,“===”比较内容和类型,字符串不为空、数值非0、有对象 时都为True》

【number+NaN】《parsInt():返回非数字以前的数值;parseFloat()  ;number(value)将value整体装换

【string】《唯一没有固定位数的数据类型;length;toString();1个字符串有两行可以在第一行末添加一个反斜杠或“+”》

*javascript对大小写敏感且变量必须以字符或下划线开始。

函数 【function 方法名(参数可以没有,自动匹配){}

【typeof+instanceof】《检查数据类型,前者针对原始数据类型后者针对引用类型》

【isFinit()】《判断是否无穷数》

【isNaN()】《判断是否为非数值类型》

注释

行注释【//……】块注释【/*……*/】

关键字

Delete/function/with/var/in/do/enum/export/const/goto/transient/volatile/debugger

原生对象和内置对象 【由ECMAScript规范】《原生对象:由javaScript提供、独立于宿主环境,内置对象:不需要显示初始化的原生对象》

 

字符串对象

样式http://www.w3school.com.cn/tiy/t.asp?f=jsrf_string_style

String.big/small/ bold/italics/blink/fixed/strike/toLowerCase/toUpperCase/sub/sup()

String.fontcolor("Red")/fontsize(16) /link("http://www.w3school.com.cn")

日期时间对象

当前时间【Date()】

1970年到指定时间的毫秒数【new Date().getTime()】

设置年月日并转为UTC字符串【new Date().setFullYear(1992,10,30).toUTCString()】

星期几【 new Date() .getDay()】

 

function startTime(){
var today=new Date()
var date=today.getDate()
var h=today.getHours()
var m=today.getMinutes()
var s=today.getSeconds()
// add a zero in front of numbers<10
document.getElementById('txt').innerHTML=h+":"+m+":"+s
t=setTimeout('startTime()',500)
}
 

数组对象

创建数组【new Array()】

合并数组【数组.concat(数组)】《新数组元素个数是两者之和,不会去重。》

数组转为字符串【数组.join(fengef)】《转为在数组元素之间插入指定分隔符的字符串》

数组排序【数组.sort()】《sort方法比较的是什么呢?字符串型数组可直接用,而数字型字符串需要做差。》

便利数组【for……in】

数学函数对象【Math】

常数【Math.E】圆周率【Math.PI】平方根【Math.SQRT2】2的自然对数【Math.LN2】以2为底的e的对数【Math.LOG2E】

浏览器对象模型(BOM) 【】《宿主对象:与宿主环境相关的对象》

参见:http://690284951-qq-com.iteye.com/blog/1447266
文档对象模型(DOM) 【】《由于页面上不止一个元素可以响应相同的事件,为了控制响应顺序,才在ie4.0和Netscape4.0中引入事件流。时间冒泡:事件从事件发生的目标最内部开始触发,向上触发到最外部(document);事件捕获:从最外层对象(window(需要程序员指定)|document)到最里层对象的顺序触发。》

事件处理模型 【】《》

进入或离开页面时触发

【onload+onUnload】《例如:Cookie操作,所有标签加载完后触发onload》

表单验证

【onFocus】《》

【onBlur】《》

【onChange】《》

【onSubmit】《点击表单提交按钮,表单数据上传前触发》

鼠标事件《时间发生顺序:click,dblclick,mouseover,mouseout,mousedown,mouseup,mousemove

【onMouseOver】《》

【onMouseOut】《》

键盘事件《事件发生顺序:keydown,keypress,keyup

【】

html事件《》

【οnerrοr=try……catch+throw】《chrome、opera 和 safari 浏览器不支持 onerror 事件。throw申明异常》

事件的绑定《绑定到事件属性时只需函数名,加括号则直接执行。》

【attachEvent(" 事件属性 ",方法)&detachEvent(" 事件属性 ",方法)+addEventListener("事件属性去on",方法,true) +removeEventListener("事件属性去on",方法,true表示在捕获阶段触发)】

 

*DOM先发生捕获后发生冒泡;起止都在document。

3成熟框架比较【就Queryjs—Ext.js】

事件

选择器

对话框

***项目问题***********************************************************

 

1、全局变量和局部变量?

2、对象的封装和继承?

3、js如何让外部文件按需载入?

 

document.write("<p>Big: " + txt.big() + "</p>")


4、隐式变量?

msg、url、l(代码行)

 

显示时间

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值