开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第3天,点击查看活动详情
说一下innerHTML 与 innerText的作用与区别?
作用:都可以获取或者设置元素的内容 区别:innerHTML可以解析内容中的html标签 innerText不能解析内容中的html标签 JavaScript 由以下三部分组成:
ECMAScript(语法部分):JavaScript 语言基础 DOM(文档对象模型):规定了访问 HTML 和 XML 的方法 BOM(浏览器对象模型):提供了浏览器窗口之间进行交互的对象和方法 介绍 JS 有哪些内置对象?
数据封装类对象:Object、Array、Boolean、Number、String 其他对象:Function、Arguments、Math、Date、RegExp、Error ES6 新增对象:Symbol、Map、Set、Promises、Proxy、Reflect JS 的基本数据类型和引用数据类型
基本(原始)数据类型: number、string、boolean、undefined, null, symbol 引用数据类型: Object、Function、Array 说几条写 JavaScript 书写的基本规范?
代码一定要正确缩进,建议使用"二个或者四个空格"缩进 语句结束使用分号; 规范定义 JSON 对象,补全双引号 用{}和[]声明对象和数组 变量和函数在使用前进行声明 以大写字母开头命名构造函数,全大写命名常量 代码段使用花括号{}包裹 还有要书写正确的标识标签 什么是标识符?
在JS中,可以自定义命名的东西都属性标识符; 比如变量名,函数名,参数名都是标识符 DOM 元素e的 e.getAttribute(propName)和 e.propName 有什么区别和联系
e.getAttribute:获取的是标签上属性 可以通过e.setAttribute(propName, propValue)设置标签上属性 e.propName:获取的是元素对象上属性 offsetWidth/offsetHeight,clientWidth/clientHeight,scrollWidth/scrollHeight 的区别?
offsetWidth/offsetHeight 返回值包含 content + padding + border + 包含滚动条,效果与 e.getBoundingClientRect()相同 clientWidth/clientHeight 返回值只包含 content + padding,如果有滚动条,也不包含滚动条 scrollWidth/scrollHeight 返回值包含 content + padding + 溢出内容的尺寸 检测浏览器版本版本有哪些方式?
根据 navigator.userAgent // UA.toLowerCase().indexOf('chrome') 说一下元素节点、文本节点、属性节点的nodeType、nodeName、nodeValue分别是什么
nodeType(节点类型) nodeName(节点名称) nodeValue(节点的值) 元素节点: 1 元素标签名 null(没有值) 属性节点: 2 属性名 属性值 文本节点: 3 text 节点内容 ==和===的区别
双等号判断时,只需要值相等 三等号判断时,需要值与类型都相等 函数声明与函数表达式的区别?
数声明就是直接通过function进行声明函数,例如:function show(){}可以在声明函数之前调用0函 数组方法pop() push() unshift() shift()
pop()尾部删除 push()尾部添加 unshift()头部添加 shift()头部删除 ajax请求的时候get 和post方式的区别
(1)get请求
参数要跟在url后面 安全性不高 传输数据比较小,但速度快 一般用于获取,删除
(2)post请求
参数会放在请求体中, 安全性相对高些 传输数据大,但相对速度慢些 post一般用于修改或者添加 解释什么是Json:
json是一种轻量级的数据交换格式,一般用于数据传递 里边只允许出现双引号 JSON的语法表示三种类型值,简单值(字符串,数值,布尔值,null), 数组,对象 dom事件委托什么原理,有什么优缺点 事件委托原理: 事件冒泡机制(把子元素的事件行为 委托给 父级元素执行优点)
优点:
- 可以大量节省内存占用,减少事件注册
- 可以实现当新增子对象时,无需再对其进行事件绑定
缺点: 如果把所有事件都用事件代理,可能会出现事件误判