日期:2014-05-16  浏览次数:20376 次

页面行为: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/1