nodeName,nodeValue,nodeType,typeof,instanceof 的区别

本文深入解析DOM中nodeName, nodeValue及nodeType属性的功能与使用场景,涵盖了元素、属性、文本和文档节点的具体表现形式,同时对比了typeof和instanceof操作符在JavaScript中对类型判断的不同之处。

nodeName 属性含有某个节点的名称。
更多免费教学文章请关注这里
元素节点的 nodeName 是标签名称

属性节点的 nodeName 是属性名称

文本节点的 nodeName 永远是 #text

文档节点的 nodeName 永远是 #document

nodeValue 节点值

对于文本节点,nodeValue 属性包含文本。

对于属性节点,nodeValue 属性包含属性值。

nodeValue 属性对于文档节点和元素节点是不可用的。

nodeType 属性可返回节点的类型。

最重要的节点类型是:

元素element1属性attr2文本text3注释comments8文档document9补充:

值-元素类型

1-ELEMENT

2-ATTRIBUTE

3-TEXT

4-CDATA

5-ENTITY REFERENCE

6-ENTITY

7-PI (processing instruction)

8-COMMENT

9-DOCUMENT

10-DOCUMENT TYPE

11-DOCUMENT FRAGMENT

12-NOTATION

typeof

返回一个表示表达式数据类型的字符串,可能的字符串有:“number”、“string”、“boolean”、“object”、“function” 和 “undefined”

他不像typeof能告诉你是什么类型的 ,instanceof只能判断这个对象是不是你要判断的类型

在这里插入图片描述

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
	<script type="text/javascript">
		//typeof和instanceof区别
		//typeof可以判断任意变量的类型,在判断对象的类型时候,typeof总是返回object
		//instanceof只能判断对象的类型,返回对象的精确类型

		var num=25;
		var name="tom";
		var flag=true;
		var a=null;
		var nums=[12,4,54];
		var array=new Array();
		var stu={id:1001,name:"jack"};
		var p=new Person("alice",20);

		/*console.log(typeof num);
		console.log(typeof name);
		console.log(typeof flag);
		console.log(typeof a);
		console.log(typeof nums);
		console.log(typeof array);
		console.log(typeof stu);
		console.log(typeof p);*/

		console.log(nums instanceof Array);
		console.log(nums instanceof Person);
		console.log(stu instanceof Person);
		console.log(p instanceof Person);

		if(stu instanceof Array){
			console.log("stu是一个数组");
		}


		function Person(name,age){
			this.name=name;
			this.age=age;
		}
	</script>
</head>
<body>
	
</body>
</html>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值