1、js的基本数据类型
Number、String、Boolean、Null、Undefined
还有复杂数据类型:Object(Array、Json等)
2、js有哪些内置对象
Object是所有JS中所有对象的父对象
数据封装类对象:Object、Array、Boolean、Number、String
其他对象:Function、Arguments、Math、Date、RegExp、Error
3、js基本规范?
(1)不要在同一行声明多个变量;
(2)请使用==或!==来比较true或false的值;
(3)使用对象字面量(json)替代new Array这种形式
(4)不要使用全局函数
(5)switch语句带有default分支
(6)函数不应该有时候有返回值,有时候没有返回值
(7)for循环必须使用大括号
(8)if语句必须使用大括号
(9)for-in循环中变量,应使用var关键字明确限定作用域,从而避免作用域污染
4、 eval是做什么的?
它的功能是把对应的字符串解析成JS代码并运行;
应该避免使用eval,不安全,非常耗性能(2次,一次解析成js语句,一次执行)。
由JSON字符串转换为JSON对象的时候可以用eval,var obj =eval('('+ str +')')。
5、DOM怎样添加、移除、移动、复制、创建和查找节点
// 创建新节点
createDocumentFragment() //创建一个DOM片段
createElement() //创建一个具体的元素
createTextNode() //创建一个文本节点
// 添加、移除、替换、插入
appendChild()
removeChild()
replaceChild()
insertBefore() //在已有的子节点前插入一个新的子节点
// 查找
getElementsByTagName() //通过标签名称
getElementsByName() //通过元素的Name属性的值(IE容错能力较强,会得到一个数组,其中包括id等于name值的)
getElementById() //通过元素Id,唯一性
7、new操作符具体干了什么呢?
(1)创建一个空对象,并且 this 变量引用该对象,同时还继承了该函数的原型。
(2)属性和方法被加入到 this 引用的对象中。
(3)新创建的对象由 this 所引用,并且最后隐式的返回 this 。
8、JSON 的了解?
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。它是基于JavaScript的一个子集。数据格式简单, 易于读写, 占用带宽小。
格式:采用键值对,例如:{'age':'12', 'name':'back'}
9、null和undefined区别?
null表示“无”,转为数值时为0;undefined是表示“无”的原始值,转为数值时为NaN。
undefined:
(1)变量被声明了,但没赋值,就是undefined;
(2)调用函数时,应该提供的参数没有提供,该参数等于undefined;
(3)对象没赋值的属性,该属性的值为undefined;
(4)函数没有返回值时,默认返回undefined。
null:
(1)作为函数的参数,表示该函数的参数不是对象。
(2)作为对象原型链的终点。
网友评论