JavaScript
文章平均质量分 57
啦啦啦小骑士
此人并不懒,但还是什么都没有写,嘿嘿
展开
-
Vite项目配置resolve.alias后提示『找不到模块』的解决办法
vite.config.ts可以配置resolve.alias别名,这样在项目中import时就不用写一长串相对路径了,但有时会遇到编辑器提示『找不到模块』,虽然不影响编译与运行,但看着很碍眼。原因就是缺少了相应的配置,导致VSCode识别不了模块。原创 2022-11-27 10:59:58 · 5180 阅读 · 2 评论 -
重写Promise源码的渐进式总结,以及对JS异步的感悟
闭包、原型及异步被号称是JS基础知识的三座大山,其中,异步算是让初学者最迷惑的一坐巍峨雄峰了,异步在计算机知识中并不是很复杂的概念,但由于JS语言的独特差异,导致JS中的异步理解及操作稍显费劲。本文原本是记录Promise源码的渐进式实现过程的手记,后来我补充了很多自己关于JS异步的理解,最终形成了一篇内容还算饱满的文章,描述可能并不准确,仅作参考。原创 2022-05-17 18:37:06 · 496 阅读 · 0 评论 -
Vue.js知识点大复盘(Vue2对照Vue3新特性)
这篇文章是个人学习时记录的要点汇总,因为文字风格比较随意,而且省略了代码示例,更没有覆盖完整知识面,所以仅用作学习过后的复习材料,若需系统学习应参考Vue.js官方文档(本文的几个引用段落均摘自该文档)本文知识点以Vue2为基准,补充了一些Vue3的内容(现有特性变更会用荧光笔标注,新加特性会在标题上注明“Vue3新”),另外,个人认为的易错点以及涉及思想的内容会在标题上注明“重点”。原创 2021-12-18 17:40:44 · 928 阅读 · 1 评论 -
移动端页面适配方案
适配原理:1rem = font-sizefont-size = 视口宽 / 系数init-scale = 1 / 设备像素比根据(function () { // 使用严格模式 "use strict"; // 获取HTML元素、meta标签、设备像素比,设置缩放阈值 var docEl = document.documentElement, viewportEl = document.querySelector('meta[name="viewport"]'),原创 2021-03-25 09:42:33 · 257 阅读 · 0 评论 -
使用ES6封装Ajax类
1. 设置常量可以根据需要设置一些常量// 常量export const HTTP_GET = 'GET';export const CONTENT_TYPE_FORM_URLENCODED = 'application/x-www-form-urlencoded';export const CONTENT_TYPE_JSON = 'application/json';2. 封装工具类主要用于数据的转换及URL处理// 将数组序列化成URLEncoded格式的字符串const seria原创 2021-02-20 16:29:33 · 361 阅读 · 0 评论 -
使用ES6封装JS的Cookie
1. 设置Cookie的函数:因为名值对可能出现非英文字符,所以使用encodeURIComponent函数进行编码const set = (name, value, { maxAge, domain, path, secure } = {}) => { let cookieText = `${encodeURIComponent(name)} = ${encodeURIComponent(value)}`; if (typeof maxAge === 'number') {原创 2021-02-19 09:06:39 · 291 阅读 · 0 评论 -
JS获取URL中的参数
思路:通过正则表达式获取URL中name=xxx的部分,然后将其中的十六进制转义序列转换成正常的字符function getQueryString(name) { var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); var r = window.location.search.substr(1).match(reg); if (r != null) { return decodeUR原创 2020-08-29 11:17:52 · 197 阅读 · 0 评论 -
JS面向对象的重要知识点
一、闭包闭包指定义在一个函数内部的函数,用户可以在函数外通过闭包访问函数的局部变量。// 外层函数function outside() { // 外层函数的局部变量 var a = 250; // 内层函数 function inside() { return a; } // 将内层函数作为返回值 return inside;}var fn = outside();...原创 2019-10-29 00:18:46 · 256 阅读 · 0 评论 -
JS函数的深入理解
一、JS函数的本质JS函数本质就是一种对象!!!编写者完全可以用操作对象的方式去操作函数var obj = {};function fn() {}/** * 分别向对象和函数添加属性值,以验证函数其实就是一类对象 */obj.info = "对象";fn.info = "函数";console.log("obj是" + obj.info); // 正常打印"obj...原创 2019-10-26 11:33:00 · 627 阅读 · 0 评论 -
JS参数传递和作用域的易混淆点
一、JS传参的形式JS中不管参数是基本数据类型还是引用数据类型,都是按值传递!!!引用数据类型作为参数时,会将传入对象的内存地址值赋给形参。/** * 欲更改对象的名字 */function setName(obj) { obj.name = "小明";}var student = { name: "无名"};setName(student); // 最后结果为stud...原创 2019-10-23 11:16:53 · 223 阅读 · 0 评论