js面试题(四)
js面试题 每日一背
一、offsetWidth/offsetHeight, clientWidth/clientHeight 的区别
- offsetWidth/offsetHeight 返回值包含 content + padding + border
- clientWidth/clientHeight 返回值只包含 content + padding,如果有滚动条,也不包含滚动条
二、说几条写 JavaScript 的基本规范
- 不要在同一行声明多个变量
- 请使用 ===/!== 来比较 true/false 或者数值
- 使用对象字面量替代 new Array 这种形式
- 避免过多的全局变量或函数
三、null,undefined 的区别
- undefined 表示不存在这个值。
- undefined 是一个表示 "无" 的原始值或者说表示 "缺少值",就是此处应该有一个值,但是还没有定义。当尝试读取时会返回 undefined
- 例如变量被声明了,但没有赋值时,就等于 undefined
- null 表示一个对象被定义了,值为“空值”
- null : 是一个对象(空对象, 没有任何属性和方法)