Q5:解释什么是引用类型?在使用引用类型的时候需要注意什么?
引用类型通常叫做类,也就是说,遇到引用值时,所处理的就是对象,就是公用。
类型: object类型,应用于应用程序中存储和数据传输(创建object实例:new操作和队象字面量表示法);
Array类型,JavaScript数组的每一项都可以保持任何类型的数据,数组大小可以动态调整;
转换方法,所有对象都具有tolocalstring()和tostring(),valueOf()方法,调用tostring()和value()方法会返回相同的值,即由数组中每个值的字符串形成拼接而成的一个以逗号分隔的字符串,实际上为了创建这个字符串会调用数组每一项的tosring()方法;
栈方法:栈后进先出,在栈中向的插入和移除只发生在个位置一栈的顶部。
队列方法:先进先出,队列在列表的末端添加项从列表的前端移除项,由于push()事项数组末端加项,因此要模拟队列只需要一个从数组前端取得项的方法,实现这一操作的数组方法就是shift(),它能够移除数组中的第一个项并返回该项,同时将数组长度减一,结合使用shift()和push() 方法可以使用队列一样使用数组;
重排序方法,数组中已经存在两个可以直接用来重排序的方法,reverse()和reverse(),reverse()会练将翻转数组项的顺序;
操作方法,contact()方法可以基于当前数组中的所有项创建一个新数组,如果传递给concat()方法的是一或多个数组,则该方法会将这些数组中的每一项都添加到结果数组中,如果传递的值不是数组,这些值就会被轻易的添加到结果数组的末尾。
Date类型,创建一个日期对象,使用new操作符和date构造函数即可;
Function类型,每个函数都是function类型的示例,而且都与其他引用类型一样具有属性和方法,由于函数是对象,因此函数名实际上也是一个指向函数对象的指针,不会与某个函数绑定;
Q6:基本的DOM操作有哪些?
geteElementById();getElementsByName();getElementsByTagName();
childNodes:返回当前元素所有子元素的数组;
firstChild:返回当前元素的第一个下级子元素;
lastChild:返回当前元素的最后一个子元素;
nextSibling:返回紧跟在当前元素后面的元素;
nodeValue:制定表示元素值的读写属性;
parentNode:返回元素的父节点;
previousSibling:返回紧邻当前元素之前的元素;
getElementById(id)(document)获取有指定唯一ID属性值文档中的元素;
getElementsByTagName(name)返回当前元素中有指定标记名的元素的数组;
hasChildNodes()返回一个布尔值,指示元素是否有子元素;
getAttribute(name)返回元素的属性值,属性由name指定;
Document.createElement(tagName)文档对象上的此方法可以创建由tagName指定的元素,如果以串div作为方法参数,就会生成一个div元素;
Document.createTextNode(text)此方法创建一个包含静态文本的节点;
.appendChild(childNode)将指定的节点增加到当前元素的子节点列表;
.setAttribute(name,value)设置元素中name属性的值;
.insertBefore(newNode,targetNode)将newNode作为当前元素的子节点插到targetNode元素的前面;
.removeAttribute(name)从元素中删除属性name;
.removeChild(childNode)从元素中删除子元素childNode;
.replaceChildNode(newNode,oldNode)将节点oldNode替换为节点newNode;
.hasChildNodes()返回一个布尔值,指示元素是否有子元素。