自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(58)
  • 资源 (7)
  • 问答 (2)
  • 收藏
  • 关注

原创 ‘gulp‘不是内部或者外部命令,也不是可运行的程序或批处理文件

gulp的安装

2023-03-12 10:02:28 582 1

原创 npm run dev 报错

vue

2023-02-18 22:27:47 587

原创 学习笔记记录

学习记录

2022-11-28 22:53:22 211

原创 yarn : 无法加载文件 C:\Users\sunlight\AppData\Roaming\npm\yarn.ps1,因为在此系统上禁止运行脚本。

yarn 无法加载文件 C:\Users\sunlight\AppData\Roaming\npm\yarn.ps1,因为在此系统上禁止运行脚本。

2022-11-28 22:31:19 876 6

原创 CSS3 —— transform 问题

概述本文首先介绍 transform 的使用,然后根据使用举例子,加深印象,最后补充一些面试过程中被问到的问题。使用通过修改坐标空间,CSS transforms 可以在不中断正常文档流的情况下改变受影响内容的形状和位置。CSS transforms是使用一组 CSS 属性实现的,这些属性允许您将仿射线性变换应用于 HTML 元素。这些变换包括平面和 3D 空间中的旋转、倾斜、缩放和平移。值得注意的是:只有在盒模型中,使用定位的元素才能够使用 transform 。根据经验(As a rul

2021-10-25 10:39:27 470

原创 相对定位与绝对定位层叠上下文优先级的问题

相对定位与绝对定位堆叠样式优先级的问题<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0">

2021-10-22 21:31:24 525

原创 flex和grid布局的差别

flex 布局什么是 flex 布局全成 flexible Box 意为弹性盒子。弹性盒子是 CSS3 的一种新的布局模式。相对于传统的依赖于display+position+float的布局方式,弹性盒子更加以有效的方式来对一个容器中的子元素进行排列、对齐和分配空白空间。如何使用// 任何一个容器都可以指定为Flex布局,你需要的仅仅是增加一行display: flex;// 如果是行内元素的话则是display: inline-flex;注意,设为 Flex 布局以后,子元素的fl

2021-10-21 21:51:40 5713

原创 分享题解09:礼物的最大价值

题目:礼物的最大价值描述在一个 m*n 的棋盘的每一格都放有一个礼物,每个礼物都有一定的价值(价值大于 0)。你可以从棋盘的左上角开始拿格子里的礼物,并每次向右或者向下移动一格、直到到达棋盘的右下角。给定一个棋盘及其上面的礼物的价值,请计算你最多能拿到多少价值的礼物?示例 1:// 输入:[ [1,3,1], [1,5,1], [4,2,1]]// 输出: 12// 解释: 路径 1→3→5→2→1 可以拿到最多价值的礼物第一种解题思路每次只能向下或向右第一行:自己 = 自己

2021-09-10 22:50:03 73

原创 分享题解08:数组放大

有一个 n*n的二维数组,现在我们想将数组放大 K 倍,放大最简单的方法就是在保持现有排列的情况下,平均增加每个像素的数量,示意图如下结果示意图:var arr = [ [0,1], [1,0]];var newArr = [];function bigArr(n,k,arr){ for(let i = 0; i < n;i++){ for(let j = 0; j < n; j++){ let temp = arr

2021-09-07 23:53:53 400

原创 分享题解07:链表排序

剑指 Offer II 077. 链表排序题目连接给定链表的头结点 head ,请将其按 升序 排列并返回 排序后的链表 。var sortList = function(head) { if (!head || head.next === null) return head; let arr = []; while (head) { arr.push(head); head = head.next; } arr.sort((a,b) => a.val -

2021-09-06 10:37:08 198

转载 js Map对象的用法

原文连接

2021-08-30 14:42:40 122

转载 Javascript 字符串全排列组合方法实现

原文链接题目在题目的要求中,存在可能存在重复的样例,因此在最后的结果中需要去重,代码如下:function Permutation(str){ // write code here var result = []; if (str.length <= 1) { return [str]; }else{ for (var i = 0; i < str.length; i++) { var c = str[i

2021-08-29 15:43:03 280

原创 分享题解06:最大子序和

题目描述给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。示例1 输入:nums = [-2,1,-3,4,-1,2,1,-5,4] 输出:6 解释:连续子数组 [4,-1,2,1] 的和最大,为 6 。示例2 输入:nums = [1] 输出:1思路分享难度等级:简单(是的,你没有看错,这个题难度系数简单,是不是感觉大神们把难度拉高了,完全没有思路)。下面代码部分是我的解答步骤,测试通过 190/203,感觉应该是第三层 for

2021-08-29 12:30:56 120

转载 nodejs降级为低版本

这篇文章的起因是我想写一个js 的原生项目,讲解的视频用的是gulp3.9.1打包工具,安装完gulp3.9.1之后,打包时会报错,主要原因是nodejs版本过高,因而本文章主要介绍了windows如何把已安装的nodejs高版本降级为低版本,本文分步骤通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下:第一步:先清空本地安装的node.js版本1.不记得安装位置的话:按健win+R弹出窗口,键盘输入cmd,然后敲回车(或者鼠标直接点击电脑桌面最左下角

2021-08-24 17:17:57 2284

原创 分享题解05:数组元素的平方(数组遍历的方法)

描述为数组 arr 中的每个元素求二次方。不要直接修改数组 arr,结果返回新的数组示例输入:[1, 2, 3, 4]输出:[1, 4, 9, 16]代码输入:var arr = [1, 2, 3, 4, 5];console.log(square(arr));解法一:for遍历这种方法对于有一定语言基础的人,可能是最容易想到的了,思路比较简单,直白。第一种: for 遍历function square(arr) { var newArr = []; for (var

2021-08-24 14:46:07 1359

原创 CDN是什么,怎么工作的,怎么实现加速

前言第一次听说这个的时候,我先是去看了一些书籍资料以及博客,理论比较晦涩难懂,虽然我不喜欢文字,但还是放一些文字介绍,以便下次学习。定义CDN的全称是Content Delivery Network,即内容分发网络。CDN是构建在现有网络基础之上的智能虚拟网络,依靠部署在各地的边缘服务器,通过中心平台的负载均衡、内容分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。CDN的关键技术主要有内容存储和分发技术。组成CDN网络中包含的功能实体包括内容缓存设备、内容

2021-08-23 12:19:30 154

原创 分享题解04:二分法

二分查找二分查找是一种基于比较目标值和数组中间元素的教科书式算法。如果目标值等于中间元素,则找到目标值。如果目标值较小,继续在左侧搜索。如果目标值较大,则继续在右侧搜索。算法步骤:初始化指针 left = 0, right = n - 1。当 left <= right: 比较中间元素 nums[pivot]和目标值 target 。如果 target = nums[pivot],返回 pivot。如果 target <nums[pivot],则在左侧继续搜索 right

2021-08-19 13:18:58 88

原创 分享题解03:FED19 移除数组中重复的元素

描述移除数组 arr 中的所有值与 item 相等的元素,直接在给定的 arr 数组上进行操作,并将结果返回示例1输入:[1, 2, 2, 3, 4, 2, 2], 2输出:[1, 3, 4]// 方法一:// 直接判断数组元素是否与给定数相等,相等则删除// 别忘了删除后的 i--function removeWithoutCopy(arr, item) { for(var i = 0; i < arr.length; i++){ if(arr[i] == i

2021-08-18 11:10:27 69

原创 js中的循环方式及各种遍历的方法

循环for循环1、for有三个表达式:①声明循环变量;②判断循环条件;③更新循环变量;三个表达式之间,用;分割, for循环三个表达式都可以省略,但是两个“;”缺一 不可。2、for循环的执行特点:先判断再执行,与while相同3、for循环三个表达式都可以有多部分组成,第二部分多个判断条件用&& ||连接,第一三部分用逗号分割;for(var num = 1;num<10;num++){ console.log(num);//1,2,3,4,5,6,7,8,9}wh

2021-08-17 16:55:12 320 1

原创 分享题解02:FED10 颜色字符串转换

题目描述将 rgb 颜色字符串转换为十六进制的形式,如 rgb(255, 255, 255) 转为 #ffffffrgb 中每个 , 后面的空格数量不固定十六进制表达式使用六位小写字母如果输入不符合 rgb 格式,返回原始输入示例1输入:‘rgb(255, 255, 255)’输出:#ffffff首先是匹配三个255,之后转换成十六进制,输出使用字符串拼接。function rgb2hex(sRGB) { // 匹配括号里面的数据 let re = /rgb\((\d+

2021-08-17 15:01:40 150

原创 分享题解01:FED5 数组去重

题目描述为 Array 对象添加一个去除重复项的方法示例1输入:[false, true, undefined, null, NaN, 0, 1, {}, {}, ‘a’, ‘a’, NaN]输出:[false, true, undefined, null, NaN, 0, 1, {}, {}, ‘a’]这个题,我首先考虑到的是参考纯数字去重的算法——快慢指针进行求解:Array.prototype.uniq = function () { let newarr = [];

2021-08-16 21:45:33 58

原创 深浅拷贝的简单理解

1.深浅拷贝的定义浅拷贝只复制指向某个对象的指针而不复制对象本身,新旧对象还是共享同一块内存。深拷贝会另外创造一个一模一样的对象,新对象跟原对象不共享内存,修改新对象不会改到原对象。2.赋值和浅拷贝的区别当我们把一个对象赋值给一个新的变量时,赋的其实是该对象的在栈中的地址,而不是堆中的数据。也就是两个对象指向的是同一个存储空间,无论哪个对象发生改变,其实都是改变的存储空间的内容,因此,两个对象是联动的。浅拷贝是按位拷贝对象,它会创建一个新对象,这个对象有着原始对象属性值的一份精确拷贝。如果属性是

2021-08-16 15:53:58 111

原创 原生 js 实现 改变 this(call、apply、bind)

// call // 参数: // 第一个参数:改变到的对象 // 第二个参数:参数列表Function.prototype.call = function(target, ...args){ const type = typeof target; if(type !== 'function' || type !=='object'){ console.error('目标对象须是一个函数或者object数据类型的数据'); return; } const context = tar

2021-08-13 21:17:45 55

原创 变量提升和函数提升的优先级问题

varvar 作用域var 分为全局作用域和局部(函数)作用域,下面这个例子,变量 a 是全局作用域,变量aa 是局部作用域,全局作用域的变量可以再函数里面使用,函数里面的变量,不能在全局中使用,要使用的话可以写return返回某个变量,在函数调用时写一个变量接收函数返回的变量即可。在函数里面声明变量时,省略 var 时,例如 bb ,声明的变量默认为全局变量。 var a = 10; console.log(a); // 10 function aBa(){ //

2021-08-02 16:58:20 170

原创 Vuex 的简单使用样例

使用 vue 进行计数器的计数代码可以直接复制使用,欢迎大家交流指正<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initia

2021-07-14 16:29:36 92

原创 vue devtools 安装使用

安装第一种:需要梯子谷歌浏览器 -> 更多工具 -> 扩展程序 -> 点击扩展程序旁边的三条横线 -> 选择谷歌网上应用店 -> 搜索 vue devtools -> 安装第二种:https://github.com/vuejs/vue-devtools 切换到mater 分支,clone 到本地 ,进入文件夹安装项目所需要的 npm 包npm install编译项目文件npm run build添加值 Chrome 浏览器游览器

2021-07-07 14:47:18 80

原创 安装完 git 之后,初始化项目并上传到 gitee

本文是在创建完 gitee 账户以及安装好 gitee 之后的后续步骤添加完 SSH 公钥之后,如何在 git Bash here 中使用命令行,创建项目文件、初始化、以及上传到个人仓库。(还没有添加 SSH 公钥的人可以看看其他人的博文,我也会后续进行更新)git 的基本操作进到指定路径文件夹直接进入该文件夹位置,然后右键Git Bash Here,在当前文件夹打开Git Bash,类似于打开Terminal,此时的终端的路径就是在当前文件夹,然后对文件进行相关操作。在桌面右键Git Bash

2021-07-06 15:10:51 212

转载 正则表达式

参考原文

2021-07-05 08:45:45 42

转载 Vue的生命周期

Vue的生命周期先放一个官网的图,再放一个修改之后的图beforeCreate( 创建前 )在实例初始化之后,数据观测和事件配置之前被调用,此时组件的选项对象还未创建,el 和 data 并未初始化,因此无法访问methods, data, computed等上的方法和数据。created ( 创建后 )实例已经创建完成之后被调用,在这一步,实例已完成以下配置:数据观测、属性和方法的运算,watch/event事件回调,完成了data 数据的初始化,el没有。 然而,挂在阶段还没有开始, $e

2021-06-24 16:01:40 55

原创 JS之继承方式

JS之继承方式继承是 OO 语言中的一个最为人津津乐道的概念。许多 OO 语言都支持两种继承方式:接口继承和实现继承。接口继承只继承方法签名,而实现继承则继承实际的方法。如前所述,由于函数没有签名,在 ECMAScript 中无法实现接口继承。 ECMAScript 只支持实现继承,而且其实现继承主要是依靠原型链来实现的。原型链ECMAScript 中描述了原型链的概念,并将原型链作为实现继承的主要方法。其基本思想是利用原型让一个引用类型继承另一个引用类型的属性和方法。简单回顾一下构造函数、原型和实例

2021-06-17 20:46:36 57

原创 数据结构之深度优先搜索和广度优先搜索

深度优先搜索和广度优先搜索深度优先搜索( Depth- First Search)深度优先遍历:遍历类似于树的先根遍历,是树的先根遍历的推广。假设初始状态是图中所有顶点未曾被访问,则深度优先搜索可从图中某个顶点 v 出发,访问此顶点,然后依次从 v 的未被访问的邻接点出发深度优先遍历图,直至图中所有和 v 有路径相通的顶点都被访问到;若此时图中尚有顶点未被访问,则另选图中一个未曾被访问的顶点作起始点,重复上述过程,直至图中所有顶点都被访问到为止。广度优先算法(Bread-First Search

2021-06-16 19:23:33 159

原创 创建对象之原型模式

原型模式我们创建的每个函数都有一个 prototype(原型)属性,这个属性是一个指针,指向一个对象,而这个对象的用途是包含可以由特定类型的所有实例共享的属性和方法。如果按照字面意思来理解,那么 prototype就是通过调用构造函数而创建的那个对象实例的原型对象。使用原型对象的好处是可以让所有对象实例共享它所包含的属性和方法。换句话说,不必在构造函数中定义对象实例的信息,而是可以将这些信息直接添加到原型对象中,如下面的例子所示。// 原型模式function Person4(){}Person

2021-06-11 15:14:07 147

原创 js中创建对象的几种模式

工厂模式工厂模式是软件工程领域一种广为人知的设计模式,这种模式抽象了创建具体对象的过程(本书后面还将讨论其他设计模式及其在 Javascript t中的实现)考虑到在 ECMAScript中无法创建类,开发人员就发明了一种函数,用函数来封装以特定接口创建对象的细节,如下面的例子所示。// 工厂模式// 注意写法,此时还没有构造函数,函数名小写function creatperson(name,age){ var o = new Object(); o.name = name;

2021-06-09 16:52:38 90

转载 JS之instanceof

JS之instanceofinstanceof 定义instanceof 语法举例易错点手动实现 instanceofinstanceof 定义instanceof 运算符用于检测构造函数的 prototype 属性是否出现在某个实例对象的原型链上。instanceof 语法用法:object instanceof constructorobject:某个实例对象constructor:某个构造函数用来检测 constructor.prototype 是否存在于参数 object 的原型链上。

2021-06-08 16:16:42 141

原创 JS 中的 new() 执行了什么操作

要创建 Person 的新实例,必须使用 new 操作符。以这种方式调用构造函数实际上会经历以下 4个步骤:(1) 创建一个新对象;(2) 将构造函数的作用域赋给新对象(因此 this 就指向了这个新对象) ;(3) 执行构造函数中的代码(为这个新对象添加属性) ;(4) 返回新对象。new 操作符具体就干了三件事//1. 生成一个空对象var obj = {};//2. 将空对象的 __proto__ 成员指向 构造函数的 prototype (原型对象)obj.__proto__

2021-06-08 15:08:43 652

原创 实现一个函数clone,可以对js中得基本数据类型进行值复制

/** * 对象克隆 * 支持基本数据类型及对象 * 递归方法 */// 方法一:function clone(obj) { var o; switch (typeof obj) { case "undefined": break; case "string": o = obj + ""; break; case "number": o = obj - 0; break; case "boolean": o = obj; br...

2021-05-31 16:25:36 184

原创 CSS 实现居中的几种方法

**CSS 实现居中的几种方法**一、前言二、常见的方法方法一:margin和width实现方法二:inline-block和父元素text-align方法三:浮动实现水平居中方法四:绝对定位实现方法五:css3的flex实现方法六:css3的fit-content一、前言居中效果在CSS中很是普通的效果,平时大家所看到的居中效果主要分为三大类:水平居中、垂直居中和水平垂直居中。而其中水平居中相对于后两者来说要简单得多。使用了css3的flexbox的属性轻松实现多行文本水平垂直居中的方法。当然大家有可

2021-05-31 13:06:27 3824

原创 论文中三线表的制

第一步:先建空白表格,有现成表格的可以直接进行第二步操作第二步:选中表格,右键,选择表格属性第三步:点击表格,点击边框和底纹第四部:仅选择上下边框,且线宽设置为2.25磅,之后点击确定 -> 确定得到表格样式如图所示第五步:仅选中表头,右键 -> 表格属性 -> 表格 -> 边框和底纹第六步:设置完毕,点击确定 -> 确定,完成。...

2021-05-20 20:45:54 556

原创 nodejs实现新闻爬虫

nodejs实现新闻爬虫作为费德勒的铁杆粉丝,每天早上都会在新浪体育里面的网球频道浏览费德勒新闻。由于只关注费德勒的新闻,所以每次都要在网页中大量的新闻中筛选相关信息,感觉效率好低,所以用node写了一个简单的爬虫程序通过每天定时发送邮件的方式来通知。这个需求仔细看有3个功能点,信息爬虫,定时发送,邮件通知信息爬虫信息爬虫建立在对页面结构的分析,从页面内容中抽取符合我们需要的信息,所以我们在获得网页信息后,需要对dom结构进行分析,获得相关信息,组装成数据。Axios(https://github

2021-05-08 08:40:07 271

原创 jsp和asp区别

总结一下关于jsp和asp:1.从平台支持、组件模型、安全性等方便做了对比原文链接2.作者从两者自身的特点出发进行分析原文链接3.作者从结构、性能等出发进行对比原文链接4.百度经验的搜索结果原文链接...

2021-04-20 10:58:24 69

css三角形、居中、圣杯布局

css三角形、居中、圣杯布局

2021-09-01

css三角形、居中、圣杯布局

css三角形、居中、圣杯布局

2021-09-01

css三角形、居中、圣杯布局

css三角形、居中、圣杯布局

2021-09-01

css三角形、居中、圣杯布局

css三角形、居中、圣杯布局

2021-09-01

学习ajax编写的ajax.js样例

学习ajax编写的ajax.js样例

2021-08-16

js之几种继承的方式.js

配合我的博文 js 之几种继承的方式一起学习,欢迎大家交流指正

2021-06-18

创建对象的几种模式.js

详细代码

2021-06-16

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除