自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(66)
  • 收藏
  • 关注

原创 《你不知道的JavaScript》--读书笔记

???? 上卷: 作用域和闭包, this和对象原型???? 中卷: 类型和语法, 异步和性能???? 下卷:起步上路,es6及更新版本目录Part 1 作用域和闭包chart 1 作用域是什么1.1 编译原理1.2 理解作用域1.3 作用域嵌套1.4 异常1.5 ????小结chart 2 词法作用域2.1 词法阶段2.2 欺骗词法2.3 ????小结Part 1 作用域和闭包chart 1 作用域是什么1.1 编译原理 javas

2020-11-28 19:43:08 358

原创 css中flex布局justify-content: space-bewteen时,最后一排怎么处理?

????举个栗子:在box中有8个item。使用了flex布局,如下:最后一行应该用元素把空余的位置填满。(可以使用空盒子或者伪元素)。比如加两个empty盒子。注意这里的宽要设置成item的宽度才能够对齐。.box { display: flex; justify-content: space-between; border: 1px solid #666; flex-wrap: wrap;}.box .item { width: 200px; he

2020-11-11 22:52:48 890

原创 重学数据结构与算法--笔记

重学数据结构与算法–学习笔记模块一: 代码效率优化及方法论复杂度:如何衡量程序运行的效率复杂度是衡量代码运行效率的重要度量因素。复杂度包括时间复杂度和空间复杂度。时间(空间)复杂度:时间或者空间消耗量与输入数据量之间的关系数据结构:将“昂贵”的时间复杂度转换成“廉价”的空间复杂度模块二:数据结构基础模块三:...

2020-05-26 18:40:14 778

原创 前端常用的HTTP知识

前端常用的HTTP知识1 http在浏览器网络中的位置,属于应用层协议2 http的版本 1.0, 1.1, 2, 3http3底层是基于UDP来的,之前的是基于Tcp来的3 浏览器开发者工具中的network中 protocol可以看http的版本 h2表示http24 network 可以看请求的具体信息 request请求包含 method ...

2020-04-27 18:18:35 376

原创 JS中的局部实现细节控制的原则--笔记

once函数 使用场景 只允许回调函数只执行一次的方法 异步请求数据(提交表单的时候) // 抽象一个 once高阶函数,返回函数// 过程抽象的方法 来抽象出一个once函数function once(fn){ return function(...args){ if(fn){ let ret = fn.apply(this, args);...

2020-04-27 16:30:30 163

原创 如何使用JS构建复杂的UI--笔记

本文的主旨在于如何设计复杂UI组件。本文以使用JavaScript实现一个轮播图为栗子。由最基础的实现,到后面的优化都会介绍。slider包括三个部分:放置图片的主体(ul),控制小圆点及向前向后的按钮。效果图如下:我们要做一个轮播(slider)组件,应该有两个步骤结构设计 列表结构(图片是一个列表型结构,所以主体用<ul>) css 绝对定位(使用css...

2020-04-27 15:31:09 593

原创 函数声明 vs 函数表达式

区分函数表达式与函数声明 有没有函数名 通过上下文区分,在块类的为函数表达式 函数表达式有声明提前,而函数表达式没有,函数表达式在运行时声明 arguments.callee的引用一直是被调用的函数//命名函数表达式得有名字//这个名字只在新定义的函数作用域内有效,因为规范规定了标示符不能在外围的作用域内有效://调试器中的函数名...

2020-04-11 22:48:10 177

原创 关于加密与签名的理解

加密与签名的有什么不同?加密就是你看到了不该看到的东西也看不懂 签名就是你做了任何事,都抵赖不了

2020-04-11 22:47:26 169

原创 h5页面不能滑动的问题--记录

刚刚做项目的时候发现h5页面不能往下滑动。也不知道原因是什么,于是在网上看到了类似问题的分析,总结如下导致这个问题的原因可以从两个js和css这方面去排查1 查看js中是否有添加类似下面的代码//这个的作用就是 禁掉相应的事件document.addEventListener('touchmove', function(e) { e.preventDefault();}, ...

2020-03-20 19:44:18 3766

原创 使用安卓调试h5

开发者官方文档:https://developers.google.com/web/tools/chrome-devtools/remote-debugging?hl=zh-cnps: 手机也需下载一个谷歌浏览器噢如何让手机能够访问到本地的h5?以前尝试过让手机和本地的项目地址在同一个局域网,这样可以访问;但是真的涉及到需要调试的话,还是需要按官方文档的来噢...

2020-03-07 11:52:25 421

原创 2020年你应该知道的React库

React状态管理 React内置的hooks来管理局部状态:useState, useReducer useContext Tips 局部状态: React 的 useState, useReducer, useContext Hooks 通过 Graph QL 的远程状态: Apollo Client 通过 REST 的远程状态: React Hooks or Redux...

2020-02-20 15:49:27 504

原创 用JS写一个简单的时间格式化函数,可把uct时间设置为本地时间,并且格式化

其实已经有好用的时间格式化工具了,http://momentjs.cn/写这个时间格式化函数主要是满足一个需求:将uct时间转化为本地时间且格式化时间;function formatTime(time) { return time < 10 ? "0" + time : time;};// 参数 时间字符串, 格式化的样式function localTime(time, ...

2020-02-18 16:51:56 521

原创 ES6 计算属性名称(Computed property names)

在react的文档里看到了这么一段代码,想不起什么是计算属性名称。现在记录一下。this.setState({ [name]: value});等同于ES5中的以下代码var partialState = {};partialState[name] = value;this.setState(partialState);在https://developer.mozil...

2019-10-15 18:54:36 1071

原创 元素水平居中,垂直居中

问题描述:一个元素在容器中垂直居中。方法(一)容器盒子设置position:relative;元素设置position:position: absolute;top: 50%;left:50%;transform:translate(-50%,-50%);<!DOCTYPE html><html> <head> <meta cha...

2019-10-09 18:10:46 102

原创 flex布局

1 概述flex布局的属性有点多,除了弹性盒子还有弹性元素的属性。使用到弹性布局的时候总会有点懵逼。。。现在重新梳理一下弹性布局。首先弹性布局里包括弹性容器和弹性元素。一个元素既可以是弹性盒子,也可以是弹性元素。有一点挺重要的,flex布局是一种一维布局。一次只能处理一个维度(一行或者一列)上的元素布局与弹性容器相关的属性:flex-flow 复合属性(flex-flow = ...

2019-10-08 23:33:51 378

原创 CSS中content属性的作用

content属性与:before及:after伪元素配合使用,用于插入生成的内容;与:before搭配,在元素前插入内容。与:after搭配,在元素后插入内容。可以插入的内容包括文本、图像、引号,还可以结合计数器,为页面元素插如编号。举个栗子:<!DOCTYPE html><html> <head> <meta charse...

2019-10-08 11:51:54 522

原创 几种解决IE6 Bug的方法

解决双边距问题,是使用float引起的解决方法:使用display:inline3像素问题 ,是使用float引起的解决方法:使用_margin-right:3px超链接hover伪类样式,单击后失效解决方法:使用正确的书写顺序 :L->V->H->A (link,visited,hover,active)z-index问题解决方法:给父级元素添加positi...

2019-10-08 11:36:12 206

原创 实现DIV+CSS实现三栏布局(左右固定50px,中间自适应)

效果图如下,当改变页面的宽度 两侧的宽度为50px,中间自适应<!DOCTYPE html><html> <head> <meta charset="utf-8"> <title>d</title> <style> .container{ height: 500px;...

2019-10-08 11:13:31 687

原创 JS题目--对象相关

(1)输出什么?const box = { x: 10, y: 20 };Object.freeze(box);const shape = box;shape.x = 100;console.log(shape){ x: 10, y: 20 }分析:Object.freeze使得无法添加、删除或修改对象的属性(除非属性的值是另一个对象)。(2)输出什么?co...

2019-10-06 15:45:44 221

原创 JS基础学习笔记--正则表达式

1 概述--正则表达式什么是正则?在常见的字符串检索或替换中,我们需要提供一种模式表示见多或替换规则。正则表达式使用单个字符串来描述、匹配一系列复合某个语法规则的字符串。 // 简单的例子 /\d\d\d/.test('123'); //true 使用字面量的正则 /\d\d\d/.test('abc'); // false new RegExp("cindy"...

2019-10-06 15:33:22 118

原创 JS基础学习笔记--OOP面向对象

1 OOP概念面向对象程序设计(Object-oriented programming,缩写:OOP)是一种程序设计范型,同时也是一种程序开发的方法。对象指的是类的实例。它将对象作为程序的基本单元,将程序和数据封装在其中,以提高软件的重用性、灵活性和扩展性。重要概念:继承 封转 多态 抽象2 继承 继承的关键语句 使用Object.create创建一个空对象...

2019-10-06 12:00:37 179

原创 JS基础学习笔记--函数

1 概述函数的定义:函数是一块JS代码,被定义一次,可以执行和调用多次。JS中的函数也是对象,多以JS函数可以像其他对象那样操作和传递,所以也常称为函数对象函数的构成:函数名 参数列表 函数体 返回语句函数的声明方式函数声明 函数表达式 使用new Function()2 函数声明 vs 函数表达式// 函数声明function fn (){};//函数表达式va...

2019-10-06 10:58:21 217

原创 JS基础学习笔记--对象

1 对象的概述对象包含一系列的属性及方法,这些属性是无序的,每个属性都有一个字符串key和对应的value对象的结构包括:属性、方法、标签([[class]] [[proto]] [[extensible]]),属性也具有属性标签(writable,enumerable,configurable,value,get/set方法)对象的序列化和反序列化及toString(),valueO...

2019-10-05 16:59:13 117

原创 git 解决 fatal: 'origin' does not appear to be a git repository

噢 我出现这个问题是因为在添加远程地址时写错了。出现这个问题还有可能是你的ssh的公钥没有生成或者没有添加到github的账号里。$ git remote add origin git@github.com:yourName/yourRepo.gityourName为你在github的用户名,yourRepo为仓库的名字又因为之前添加错了远程地址报错,git报错:fatal...

2019-10-04 18:51:29 1538

原创 JS基础学习笔记--数组

1 概述JS中的数组是值的有序集合;它是弱类型的,数组中可以含有不同类型的元素。数组元素甚至可以是对象或其他数组数组的大小:0到2^32-1索引位置从0开始如果传入大小在这个范围以外会报错2 创建数组的方式字面量的方式 使用new Array() 直接使用Array()也可以。(少用)//使用字面量的方式创建数组var arr=['a',1,null,unde...

2019-10-04 18:47:09 370

原创 vue-calender

​​实现功能生成当月的日历,并且标记当天的日期在输入框中输入日期会跳转到对应的月份,并标记输入的日期中间两个按钮( < >)控制月份的更改,可以切换月份旁边两个按钮( << >>)控制月份的更改,可以切换年份点击日期的格子会,弹出当前的日期日历生成的核心算法获取某一日期:计算日期当月的第一天(firstDate)和当月的最后一天(lastD...

2019-10-03 11:24:39 857

原创 git使用的过程中遇到的问题--fatal: Could not read from remote repository.

问题概述:fatal: Could not read from remote repository.问题描述:在本地有git仓库, 然后在github上新建了一个远程仓库,没有勾选初始化Initialize this repository with a README按照github的提示,将本地仓库与远程仓库关联,并且使用git push 将本地仓库推送到github的远程仓库上。...

2019-10-03 11:04:30 1334

原创 Linux常用命令--文件搜索命令

本文主要记录Linux常用命令中的文件搜索命令,如下。文件搜索命令locate 命令搜索命令 whereis 与which 文件搜索命令 find 字符串搜索命令grep find命令与grep的区别1 文件搜索命令locatelocate [filname]locate命令搜索文件是基于后台数据库搜索的,在后台数据库中按文件名搜索,搜索速度更快所以比find那种需要扫描所...

2019-09-19 11:22:20 346

原创 git学习记录

之前写了个todoList和jQuery插件,现在想要将源代码放到GitHub上。嘻嘻,所以有了这篇git的学习笔记。我看的廖雪峰老师的git教程,这个教程里有图有短视频,讲得挺不错的。附上廖雪峰老师的git教程地址:https://www.liaoxuefeng.com/wiki/896043488029600。 嘿,一起来学习git叭。1 Git学习笔记1.1 git简介...

2019-09-14 11:04:09 129

原创 做一个jQuery插件---带“旋转木马”效果的轮播图

前阵子看了陈情令。嘻嘻嘻,王一博真好看。。。昨天做了一个轮播图的插件,放上博机的照片好好看。。。先放个效果图下午再详细写如何实现的插件,并将代码到github ^-^回顾写jQuery插件的步骤1将jQuery插件的代码写在闭包里。(function($){ //do something})(jQuery)这样写的好处:避免全局依赖、避免第三方破坏、兼...

2019-09-10 11:57:17 587

原创 学习React之旅--写一个todoList

在上次文章中提到,我会学习React的基础和ant-design的一些组件,并且使用htmls5的web Storage实现一个todoList。todoList的功能写item:写入title及content 使用checkbox勾选item,表示这一项内容已做,item项的内容需要划掉 更改item中的content内容 删除某一项item list需要存储起来,下次访问这个页...

2019-09-08 02:14:43 150

原创 学习React之旅--1

学习React的原由是面试的时候出了一个测验。给四天时间要求用react写个todo-list的demo,还要使用ant-design作为视图界面。emmm...这些我都没有用过,还是学起来吧。刚开始的时候是在慕课网上看了一个React入门的视频,跟着视频做了个todo-list;接着看了React的中文教程,跟着教程做了一个下棋的小游戏;昨天晚上及今天上午在看React文档中主要概念一节,顺便跟...

2019-09-05 12:48:02 97

转载 一个页面从输入URL到页面加载显示完成,这个过程都发生了什么?

1.在浏览器输入url地址2.浏览器查找缓存浏览器会查找浏览器缓存,系统缓存,路由缓存,如果没有的话继续下一步,如果有的话,直接显示。note:浏览器会把访问过的web网站资源缓存起来,而判断是否使用缓存的条件有以下几种:①是否存有这个网站的缓存②这个网站的缓存是否过期,具体看Cache-Control里的缓存的有效期③跟服务器进行协商是否使用缓存,如果上次缓存的时候有La...

2019-09-02 12:29:51 221

原创 HTTP与HTTPS

1 什么是HTTP?HTTP是超文本传输协议,是客户端与服务器端之间的数据传输的格式规范。2 HTTP与HTTPS的区别HTTP是身披ssl/tls的http。区别:url 的不同 http 是以http://开头 ,https是以https://开头 端口号不同:http的端口号是80,https的标准端口号是443 传输数据放的位置不同:http提交的数据放在url后,...

2019-09-02 11:58:11 751

原创 Why is the result of (‘b’+'a'++'a'+'a').toLowerCase() 'banana'?

Why is the result of (‘b’+'a'++'a'+'a').toLowerCase() is 'banana'?这是一道基础题目,考察点是类型转换以及操作符优先级。题中的++'a' 中的第二个加号其实是一个一元操作符。所以 ++'a' ==> +NaN('b'+'a'++'a'+'a') ==> baNaNa 再使用toLowerCase()...

2019-08-31 09:58:10 148

原创 分享一个最近github上比较热门的javaScript-questions

github:https://github.com/lydiahallie/javascript-questions是一些从基础到进阶的JS题目,也包括一些ES6的题目。这里面也有中文翻译的版本哟!翻看了两遍question,现在对一些题目做笔记记录一下。54题:以下代码输出什么?(() => { let x = (y = 10);})();console.log...

2019-08-30 12:02:40 1399

原创 JS面试题--其他

(1)new运算符的作用是什么?创建一个空对象 由this变量引用该对象 该对象继承该函数的原型(更改原型链的指向) 把属性和方法加入到this引用的对象中(2)模拟new运算符function objectFactory(){ const obj = new Object(); const Constructor =[].shift.call(arguments); ...

2019-08-30 11:18:50 106

原创 JS面试题--cookie、localStorage、sessionStorage相关

1 Cookie简介Cookie:是一个在服务器与客户端之间来回传递文本值的机制。服务器可以基于其放在cookie中的数据在不同的web页面间追踪用户的信息。每次用户访问某个域的时候,cookie数据都会被来回传送。使用cookie的场景:cookie可以存储会话标识,使得web服务器能够通过cookie中存储的同服务器端购物车数据库对应的唯一ID,来识别哪个购物车属于当前用户。这样,...

2019-08-30 09:41:57 586

原创 JS面试题--DOM操作相关

(1)在DOM中操作中怎么创建、添加、删除、移除、替换、插入和查找节点①通过以下代码创建节点createDocumentFragment()//创建一个DOM片段createElement();//创建一个具体的元素createTextNode();//创建一个文本节点②添加、移除、替换、插入节点appendChild();removeChild();replaceCh...

2019-08-29 23:21:50 1689

原创 JS面试题--数组相关

(1)解释以下unshift()方法unshift()方法,将参数成员添加到数组的顶部。(2)用JavaScript实现数组合并的方法(要求去重)这里可以使用ES6特性var arr=[1,5,3];var arr1=[13,2,3,8,5];function(arr1,arr2){ var arr = arr1.concat(arr2); return [...ne...

2019-08-29 21:45:36 702

空空如也

空空如也

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

TA关注的人

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