黑马程序员技术交流社区
标题:
【石家庄校区】就业班_JavaEE_day03_04_javascript
[打印本页]
作者:
风中的消逝
时间:
2018-5-3 15:29
标题:
【石家庄校区】就业班_JavaEE_day03_04_javascript
就业班_JavaEE_day03_04_javascript
一 定义
基于对象;基于事件驱动 ;浏览器解释执行的脚本语言;增强交互性。
二 js和html结合的2中方式。
1 在html中写,例如:<strcipt type="text/javascript">js代码</strcipt> 页面引入 。一般建议放在body结束标签后面,等页面加载完成。
2. 在html中导入外部的js文件。 外部引入
例如:<strcipt type="text/javascript" src="外部js文件路径">这中间不能在写js代码</strcipt>
三 js 的三大组成部分
ecmascript 基础语法
bom 浏览器对象模型
dom 文档对象模型
四 ecmascript (基础语法与java不同)
1 数据类型
原始类型 string number boolean undifined null typeof()可以用来判断数据类型。
引用类型 object
2 j变量申明 var i 弱类型
3 运算符 === 全等 表示类型和值都相同
4 for循环 for(var i = 0 ; i<10; i++)
5 输出
alert();
document.write();
document.getElementById().innerHTML = "";
6 函数申明 没有返回值申明
function show() {
}
var f = function() {
}
7 Array对象
a var arr =[10,11,11,11,12];
b var arr = new Array(2);
arr[0] = "aaa";
arr[1] = "bbb";
c var arr = newe Array("aaa","bbb");
属性 length
方法:push pop reverse join concat
8 String对象
var str = "abc"; 属性 length
方法: 1 与html相关的方法 2 与java类似的方法 注意 substring 与java类似。 substr 第二个参数表示长度。
9 Date对象
var date = new Date()
方法 getFullYear() 返回年份 1990
getMonth() 返回月份 0-11
getDate() 返回一个月中的某一天(1-31)
getDay() 返回一周中的某一天(0-6) 星期天表示0
getHours() 返回 Date 对象的小时 (0 ~ 23)
getMinutes() 返回 Date 对象的分钟 (0 ~ 59)
getSeconds() 返回 Date 对象的秒数 (0 ~ 59)
与之对应的set方法。
getTime() 返回毫秒数 用在网址上,每次请求不使用缓存。
www.baidu.com?time=getTime
()
本地格式显示 toLocaleString() 根据本地时间格式,把 Date 对象转换为字符串。
10 Math对象
方法 与java类似。取0-9随机数 Math.floor(Math.random()*10);
11 全局函数
eval("") 将字符串当作js代码执行
encodeURI decodeURI URI编码解码
注意 : URI编码不是字符编码,是一种用于客户端和服务器端传递参数的一种方式,URI编码是在字符编码的基础上进行了一种转换。
post请求体中的参数默认浏览器会进行URI编码。而get请求中的中文参数需要我们人为去进行URI编码。
例如超链接中的<a href="/zxx/xx?username='张三'"> 服务器端会自动对传统过来的编码进行URI解码。
parseInt 转换
isNaN 判断是否是非数字 数字返回false
12 js中不存在函数重载,但可以通过arguments参数来模拟。每个函数内部都一个arguments数字来存放方法参数。
五 bom
window对象
属性
opener 表示创建该窗口的父窗口。
弹框方法
open(新窗口的地址;"","长和宽等属性的设置")
confirm();
alert();
prompt();
定时方法
setInterval();
setTimeout();
clearInterval();
clearTimeout();
location 对象
location.href="新地址" 进行地址的跳转。
history 对象
history.go(-1) 返回上一页 history.go(1) 返回到下一页
navigator对象
screen对象
六 dom
document对象
createElement(标签名称); 创建一个元素节点
createTextNode(文本内容); 创建一个文本节点
getElementById(通过ID获取element)
getElementsByName(通过那么获取element返回的是一个数组)
getElementsByTagName(通过标签名获取element返回的是一个数组)
element对象
getAttribute(属性名) setAttribute(属性名,属性值) removeAttribute(属性名)
属性对象和文本对象依附于element对象。
Node对象
(document对象 element对象 属性对象 文本对象 都实现了Node接口,所以它们都是node对象)
Node appendChild(child) 在标签末尾添加子对象,该方法相当于剪切复制。
Node insertBefore(new,old) 在old前添加new
Node removeChild(node) 删除节点 删除要注意漏删除。一般建议倒着删。
Node replaceChild(newnode,oldnode)将childNodes中的oldnode替换成newnode
parentNode属性表示父节点
七事件驱动
1 鼠标
onclick 单击 ondblclick 双击
onmouseover 鼠标放在上面 onmouseout 鼠标移出该元素 onmousemove 鼠标在元素上移动 (购物网站放大查看商品图片)
2 键盘
onkeydown 键盘按下 onkeyup 键盘抬起 (百度查询时自动给提示) onkeypress 键盘按下并松开
3 页面
onload 页面加载 写在body上
onfocus 获得光标 onblur 失去光标
onchange事件 支持该事件的html标签。 <input type="text">, <select>, <textarea>
select add(this.value) this.value 表示选中的option值
onsubmit 表单提交
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2