lianjiuxiao
码龄10年
关注
提问 私信
  • 博客:109,911
    109,911
    总访问量
  • 110
    原创
  • 1,314,791
    排名
  • 46
    粉丝
  • 0
    铁粉
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:北京市
  • 加入CSDN时间: 2014-11-27
博客简介:

月光恋九霄的博客

查看详细资料
个人成就
  • 获得46次点赞
  • 内容获得24次评论
  • 获得155次收藏
  • 代码片获得117次分享
创作历程
  • 2篇
    2023年
  • 55篇
    2021年
  • 36篇
    2020年
  • 28篇
    2019年
  • 2篇
    2018年
成就勋章
TA的专栏
  • 面试题
    41篇
  • 算法
    4篇
  • node
    1篇
  • 视频技术
    2篇
  • electron
    4篇
  • vue
    19篇
  • js
    63篇
  • css
    7篇
  • 架构
    8篇
  • react
    2篇
  • 快讯
    5篇
兴趣领域 设置
  • 前端
    javascriptcssvue.jsreact.jses6webpack前端框架
  • 后端
    node.js
  • 移动开发
    flutter
  • 网络与通信
    https
  • 微软技术
    typescript
  • 学习和成长
    面试
创作活动更多

HarmonyOS开发者社区有奖征文来啦!

用文字记录下您与HarmonyOS的故事。参与活动,还有机会赢奖,快来加入我们吧!

0人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

微信H5跳转小程序api使用和场景适用情况

微信H5跳转小程序api使用和场景适用情况
原创
发布博客 2023.05.26 ·
1157 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

url最大长度

对于前端作为分享页,或者跳转新页面时,或者做hrbrid 通信,需要用到一系列的参数来处理相对的业务逻辑,那么具体url可以携带多少参数合适
原创
发布博客 2023.01.10 ·
8868 阅读 ·
0 点赞 ·
0 评论 ·
10 收藏

前端特定手机兼容问题汇总

1: iphone5 iphoneX 对象的结构赋值 会导致字段的顺序发生变化,后面赋值的会在最后面2: 红米K30 pro 微信公众号环境 css透明度 50% 不透明,必须为0.5
原创
发布博客 2021.09.26 ·
384 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

前端特定手机兼容问题汇总

1: iphone5 iphoneX 对象的结构赋值 会导致字段的顺序发生变化,后面赋值的会在最后面2: 红米K30 pro 微信公众号环境 css透明度 50% 不透明,必须为0.5
原创
发布博客 2021.09.26 ·
384 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

React 中 setState的对象、数组的操作

import {useState} from 'react'import './App.css';function App() { let [count, setCount] = useState(0); let [arr, setArr] = useState([]); const handleClick = () => { count += 1; setCount(count) console.log(count) } const.
原创
发布博客 2021.06.06 ·
4840 阅读 ·
2 点赞 ·
1 评论 ·
9 收藏

手写promise.all

promise.all 有以下特点promise.all()返回值是new Promise需要用一个数组存放每一个promise的结果值遍历参数数组,判断是否是promise,是的话执行得到结果后压入结果数组;否则直接放入结果数组。当每个都成功执行后,resolve(result)当有一个失败,rejectfunction isPromise(obj) { return !!obj && (typeof obj === 'object' || typeof
原创
发布博客 2021.04.29 ·
222 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

webpack优化

Webpack优化可以分为优化开发体验和优化输出质量两部分1、优化开发体验优化开发体验的目的是为了提升开发时的效率,其中又可以分为以下几点: 优化构建速度。在项目庞大时构建耗时可能会变的很长,每次等待构建的耗时加起来也会是个大数目。 4-1 缩小文件搜索范围 4-1-1 在配置 Loader 时通过 include 去缩小命中范围 4-1-2 优化 resolve.modules 配置,指明存放第三方模块的绝对路径..
原创
发布博客 2021.04.27 ·
150 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏

Electron 进程间通信

Electron桌面应用中有两个进程,分别是Main主进程和Renderer渲染进程。两个进程间有多种方法进行通信。一、主进程和渲染进程1、主进程Mainmain.js在启动应用后就创建了一个主进程main process,它可以通过electron中的一些模块直接与原生GUI(在你的应用窗口)交互。2、渲染进程Renderer仅启动主进程并不能给你的应用创建应用窗口。窗口是通过main文件里的主进程调用叫BrowserWindow的模块创建的。每个页面都是运行在自己的进程里,这些进程我
原创
发布博客 2021.04.27 ·
1597 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

js手动实现 Reduce 方法

Array.prototype.myReduce = function (fn, initValue) { if (initValue === undefined && !this.length) { throw new Error('myReduce of empty array with no initial value'); } // let result = initValue === undefined ? this[0] : initValue;不要这样.
原创
发布博客 2021.04.25 ·
401 阅读 ·
0 点赞 ·
1 评论 ·
0 收藏

js 如何实现循环跳出请求

1.for方法跳出循环function getItemById(arr, id) { var item = null; for (var i = 0; i < arr.length; i++) { if (arr[i].id == id) { item = arr[i]; break; } } return item;
原创
发布博客 2021.04.22 ·
569 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

兔子数列

兔子在出生两个月后,就有繁殖能力,一对成年而有繁殖力的兔子每个月能生出一对小兔子来。假设一年以后所有兔子都不死,那么一对小兔子一年以后可以繁殖多少对兔子?1,递归function add(n){ if(n <= 2){ return 1; }else{ return add(n-1) + add(n-2); }}2,尾递归优化function add(n,res1 =1,res2 = 1){ if(n <=
原创
发布博客 2021.04.08 ·
276 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

web前端柯里化面试题

定义实现柯里化,是把接受多个参数的函数变换成接受一个单一参数(最初函数的第一个参数)的函数,并且返回接受余下的参数而且返回结果的新函数的技术。1.实现一个函数功能:sum(1,2,3,4…n)转化为 sum(1)(2)(3)(4)…(n)// 使用柯里化 + 递归function curry ( fn ) { var c = (...arg) => (fn.length === arg.length) ? fn (...arg) : (...arg1) =>
原创
发布博客 2021.03.26 ·
406 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

js实现deepCopy

function deepClone (data) { const type = metaType(data); let obj = null; if (type === 'array') { obj = []; for (let i = 0; i < data.length; i++) { obj.push(deepClone(data[i])); } } else if (type === '.
原创
发布博客 2021.03.25 ·
511 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

移动端视口配置

<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no" />initial-scale: 初始的缩放比例; minimum-scale: 允许用户缩放到的最小比例; maximum-scale: 允许用户缩放到的最大比例; user-scalable: 用户是否可以手动缩放; ...
原创
发布博客 2021.03.25 ·
148 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

前端性能优化都有哪些

1,SEO优化 合理的 title 、 description 、 keywords :搜索对着三项的权重逐个减小, title 值强调重点即可,重要关键词出现不要超过2次,而且要靠前,不同页面 title 要有所不同; description 把页面内容高度概括,长度合适,不可过分堆砌关键词,不同页面 description 有所不同; keywords 列举出重要关键词即可 语义化的 HTML 代码,符合W3C规范:语义化代码让搜索引擎容易理解网页 重要内容 HTML 代码放在最前:搜索引擎
原创
发布博客 2021.03.24 ·
311 阅读 ·
1 点赞 ·
0 评论 ·
3 收藏

事件委托

什么是事件委托 事件代理 ( Event Delegation ) ,又称之为事件委托。是 JavaScript 中常用的绑定事件的 常用技巧。顾名思义,“事件代理”即是把原本需要绑定的事件委托给父元素,让父元素担当事件监 听的职务。事件代理的原理是 DOM 元素的事件冒泡。使用事件代理的好处是可以提高性能 可以大量节省内存占用,减少事件注册,比如在 table 上代理所有 td 的 click 事件就非常棒 可以实现当新增子对象时无需再次对其绑定 ...
原创
发布博客 2021.03.18 ·
116 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

CSS3有哪些新特性

1:新特性 新增各种CSS选择器 (: not(.input):所有 class 不是“input”的节点) 圆角 (border-radius:8px) 多列布局 (column) 阴影和反射 (Shadow\Reflect) 文字特效 (text-shadow) 线性渐变 (gradient) 旋转,缩放,定位,倾斜 (transform) 动画 (Animation) 多背景,背景裁剪2: 新增伪类 - 伪元素p:first-of-type 选择属..
原创
发布博客 2021.03.18 ·
1167 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

js new 手写实现 new做了哪些事情

new到底做了哪些事情(1) 创建一个新对象;(2) 将构造函数中的this指向该对象(3) 执行构造函数中的代码(为这个新对象添加属性) ;(4) 返回新对象。function _new(obj, ...rest){ // 基于obj的原型创建一个新的对象 const newObj = Object.create(obj.prototype); // 添加属性到新创建的newObj上, 并获取obj函数执行的结果. const result = obj.ap...
原创
发布博客 2021.03.18 ·
227 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

this, bind,call,apply 面试题

了解 this 嘛,bind,call,apply 具体指什么它们都是函数的方法call: Array.prototype.call(this, args1, args2]) apply: Array.prototype.apply(this, [args1, args2]) :ES6 之前用来展开数组调用, foo.appy(null, []),ES6 之后使用 ... 操作符New 绑定 > 显示绑定 > 隐式绑定 > 默认绑定 如果需要使用 bind 的柯里化和 app
原创
发布博客 2021.03.16 ·
281 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

JS 隐式转换,显示转换

一般非基础类型进行转换时会先调用 valueOf,如果 valueOf 无法返回基本类型值,就会调用 toString字符串和数字"+" 操作符,如果有一个为字符串,那么都转化到字符串然后执行字符串拼接 "-" 操作符,转换为数字,相减 (-a, a * 1 a/1) 都能进行隐式强制类型转换[] + {} 和 {} + []复制代码布尔值到数字1 + true = 2 1 + false = 1转换为布尔值for 中第二个 while if 三元表达式 || ...
原创
发布博客 2021.03.16 ·
208 阅读 ·
0 点赞 ·
1 评论 ·
0 收藏
加载更多