解释let、var和const之间的区别
let 和 const 是在 ES6 中引入的,而 var 从 JavaScript 的早期版本开始就可用了。
let 和 const 具有块作用域,这意味着它们仅限于声明它们的块(例如,在大括号内)。var 具有函数作用域,这意味着它可以在声明它的整个函数中访问。
const 与 let 类似,但用于在初始分配后不应重新分配的变量。
解释一下 function Person(){}、var person = Person() 和 var person = new Person() 之间的区别。
function Person(){} 正在声明一个函数。
var person = Person() 将 Person 函数的引用分配给 person 变量。
var person = new Person() 使用“new”关键字创建 Person 类的新实例。
CSS 预处理器 SASS/LESS 有何用途?
SASS 和 LESS 等 CSS 预处理器用于通过添加变量、mixins、嵌套和函数等功能来增强 CSS 的功能。它们允许更高效和模块化的 CSS 开发,从而实现代码重用、改进的组织和更轻松的维护。
HTTP GET 和 POST 请求有什么区别?
HTTP GET 和 POST 请求都用于将数据从客户端传输到服务器。但是,GET 请求包括附加到 URL 的请求参数,而 POST 请求包括消息正文中的请求参数。POST 请求对于传输敏感数据更加安全,因为参数在 URL 中不直接可见。
使用回调、promise、await 和 async 处理异步调用。使用每种方法来处理异步调用有何优缺点?
回调提供了处理异步调用的传统方法,但可能导致回调地狱并使代码难以阅读。Promise 提供了更简洁的语法,并允许通过链接和 catch 块等功能更好地处理错误。Async/await 是最近添加的功能,它通过使用异步函数和等待 Promise 来简化异步代码,使代码看起来更加同步且更易于理解。
解释一下标签属性,例如“disabled”、“async”、“defer”以及何时使用“data-*”吗?
“disabled”属性用于禁用元素,防止用户交互。`async` 和 `defer` 属性与脚本标签一起使用来控制外部脚本的执行时间。
`async` 属性允许脚本异步执行,而 `defer` 属性则推迟执行,直到文档解析完成。“data-*”属性用于存储与元素关联的自定义数据属性,提供了一种无需使用非标准属性或类即可存储附加信息的方法。