JavaScript笔记

JavaScript笔记: 

-----------------------------------------------------------
JavaScript和Java一样存在两种数据类型
原始值 (存储在栈Stack中简单数据)
引用值 (存储在堆heap中对象)
5种原始数据类型
Undefined、Null、Boolean、Number 和 String 
JavaScript中字符串是原始数据类型
通过typeof运算符,查看变量类型   typeof(变量名称)
所有引用类型都是object
通过instanceof 运算符解决typeof对象类型判断问题
区分 undefined 和 null 
变量定义了未初始化/ 访问对象不存在属性 --- undefined
访问的对象不存在 --- null

-----------------------------------------------------------

BOM是浏览器对象模型,用来获取或设置浏览器的属性、行为,例如:新建窗口、获取屏幕分辨率、浏览器版本号等。
DOM是文档对象模型,用来获取或设置文档中标签的属性,例如获取或者设置input表单的value值。
BOM的内容不多,主要还是DOM。
由于DOM的操作对象是文档(Document),所以dom和浏览器没有直接关系。
-----------------------------------------------------------
** 获取毫秒数
getTime()
		返回的是1970 1 1 至今的毫秒数

		** 应用场景:
			*** 使用毫秒数处理缓存的效果(不有缓存)
				http:www.baidu.com?毫秒数
-----------------------------------------------------------
getElementById() 返回对拥有指定 id 的第一个对象的引用。
getElementsByName() 返回带有指定名称的对象集合。
getElementsByTagName() 返回带有指定标签名的对象集合。 

-----------------------------------------------------------
				*** 想要获取标签下面的子标签
		** 使用属性 childNodes,但是这个属性兼容性很差
		** 获得标签下面子标签的唯一有效办法,使用getElementsByTagName方法
		<!--获取 ul 下面的 li 子标签集合-->
		var lis = ul.getElementsByTagName("li");
		alert(lis.length);
-----------------------------------------------------------
	* 使用dom解析html时候,需要html里面的标签,属性和文本都封装成对象

	* 标签节点对应的值
		nodeType: 1
		nodeName: 大写标签名称  比如SPAN
		nodeValue: null
	* 属性节点对应的值
		nodeType: 2
		nodeName: 属性名称
		nodeValue: 属性的值
	* 文本节点对应的值
		nodeType: 3
		nodeName: #text
		nodeValue: 文本内容
-----------------------------------------------------------
5、操作dom树
	** appendChild方法
		- 添加子节点到末尾
		- 特点:类似于剪切黏贴的效果
	** insertBefore(newNode,oldNode)方法
		- 在某个节点之前插入一个新的节点
	(也可以像appendChild方法一样使用,同样也是剪切效果)
	
	* removeChild
		- 通过父节点删除
	* replaceChild(新节点,旧节点)
		- 通过父节点替换
-----------------------------------------------------------
	** 使用复选框上面一个属性判断是否选中
		- checked属性
		- checked=true:选中
		- checked=false:不选中
-----------------------------------------------------------
	** 写js的方法的命名
		add1()、add_1()

		** 不要写单一的单词 add()
		** 不要把下划线放在开始位置 _add()
-----------------------------------------------------------
添加节步骤:

		<!--创建新 li-->
		var li = document.createElement("li");
		<!--把文本加入 li 中-->
		li.appendChild(document.createTextNode("444"));
		<!--根据 id 获取 ul 标签对象-->
		var ul = document.getElementById("ulid");
		<!--把新li加入 ul 中-->
		ul.appendChild(li);
-----------------------------------------------------------
更改元素中的 value 方法:
(1)、元素.innerHTML
<div id="div1Id"></div>
	<!--向 div1 的文本中写入指定内容 适用:div,span-->
	var div1 = document.getElementById("div1Id");
	div1.innerHTML = "<h3>我是 div1 中的文本内容<h3>";
	
(2)、元素.value
<input type="text" id="input1Id" name="我是aaa" value="aaa" /><br/>
		var input1 = document.getElementById("input1Id");
		input1.value = "aab";<!--value,type,id,name...都可以(class除外)-->
		
(3)、文本节点.nodeValue
<span id="aId">aaa</span><br/>
		<!--获取元素对象 span-->
		var span1 = document.getElementById("aId");
		<!--通过元素对象获取第一个文本节点对象 aaa	(也就只有一个对象)-->
		var text1 = span1.firstChild;
		document.write("text文本值:" + text1.nodeValue + "<hr/>");<!--aaa-->
-----------------------------------------------------------

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值