自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

stc的博客

欢迎大家交流

  • 博客(31)
  • 收藏
  • 关注

原创 面对有挑战的事情

导读本文内容较多,接近3w字,可以先看目录,再读内容。以及主要内容为语音转录,口语化内容清理过一波,仍有较多不通顺的地方,可以直接评论指出。由于本篇文档内容较多,信息量过大,一次性阅读容易懵。最好的方式是,针对单个话题阅读,一次只解决一个问题。Chapter 0引子,一些闲聊参禅之初,看山是山,看水是水;禅有悟时,看山不是山,看水不是水;禅中彻悟,看山仍然山,看水仍然是水。——之前想用来作为大纲,但发现不务实,就放这里当个装饰。平时经常被提问:本文讲的内容是,作为研发人员,对于产品知识学习和理解

2023-10-20 16:09:41 414

原创 lodash.js常用方法汇总

lodash是js的一个实用工具库,现在es6盛行,搭配loash工具库是最方便的一件事了。lodash内部封装了关于字符串,数组,对象一些常见数据类型的处理函数。它所有函数都不会在原有的数据上进行操作,而是复制出一个新的数据而不改变原有数据。使用传统的js方法处理数据,我们难免会用到遍历取数,而使用loash工具库我们可以减少这一环节,所以还是安利一下。下面整理的是项目上比较常用到的方法,主要是针对于数组。做一个属于自己的方法查找工具书吧。使用之前要引用:import {_} from ‘loas

2020-10-06 10:50:58 1963 2

原创 京东前端四轮面经

写一下京东的四轮面经吧(暂时还没下offer)一面,考察基础,主要问了了ES6,canvas,java基础,以及linux相关的一些题二面,考察知识深度与广度,问到了SEO的优化,前端页面优化,设计一个电商系统,cocos2d(前一阵想做游戏有了解过),Taro(之前做跨平台微信小程序开发学过一点),vue底层,三次握手三面,毕业时间,以及之前在学校担任的职务,办过哪些活动等等HR面,职业...

2020-04-25 20:53:31 480

原创 微信小程序canvas适应手机屏幕

小程序canvas的API并没有像其他的一样支持小程序独有的 rpx 自适应尺寸单位,在绘制内容时所应用的单位仍然是 px,那么如何实现不同尺寸屏幕的自适应呢?首先我们根据开发工具可知不同常用屏幕的尺寸:在这里插入图片描述由此可知我们开发中常用的参考屏幕尺寸(iPhone6)为:375*667;那么想要适应其他尺寸的屏幕时只需按照iPhone6的绘制大小按比例进行换算即可:首先利用wx.getS...

2020-03-15 09:10:26 1177

原创 js then方法

then()方法是异步执行。意思是:就是当.then()前的方法执行完后再执行then()内部的程序,这样就避免了,数据没获取到等的问题。语法:promise.then(onCompleted, onRejected);参数promise必需。Promise 对象。onCompleted必需。承诺成功完成时要运行的履行处理程序函数。onRejected可选。承诺被拒绝时要运行的错误处理程...

2020-03-05 14:07:43 1882

原创 xposed框架

xposed框架是一个由xda开发的框架,安装之后,让许多软件在此框架里面运行,比如绿色守护借助这个框架可以获得更多的功能,gravitybox必须在这个框架里面运行,需要root,MIUI禁止使用。xposed是由大名鼎鼎的XDA团队基于android开发的一款框架,Xposed 就好比是 Google 模块化手机的主体,只是一个框架的存在,在添加其他功能模块(Modules)之前,发挥不了什...

2020-02-28 19:32:04 670

原创 UFT工作原理

我们通过UFT来模拟人的手工操作,进行一些自动化的测试工作,它在模拟人的手工操作过程中会记录操作的对象和所做的操作顺序,然后在回放时按记录顺序操作这些对象,在这个模拟回放的过程中,最重要的就是对界面对象的识别,例如一个登录界面中有文本框、标签和按钮,这些就是UFT捕获的目标,然后通过捕获对象形成一个库,然后会把相应的对象的属性和方法列出来,然后在录制过程中调用相应对象的属性和方法,并进行UFT的相...

2020-02-26 13:02:18 623

原创 http状态码

1XX:通知1XX系列响应代码仅在与HTTP服务器沟通时使用。100(“Continue”)重要程度:中等,但(写操作时)很少用。这是对HTTP LBYL(look-before-you-leap)请求的一个可能的响应。该响应代码表明:客户端应重新发送初始请求,并在请求中附上第一次请求时未提供的(可能很大或者包含敏感信息的)表示。客户端这次发送的请求不会被拒绝。对LBYL请求的另一个可能的...

2020-02-21 18:53:27 257

原创 字节跳动前端面试

字节跳动前端一面给我面试的是一个二十五六左右的小哥首先是一个自我介绍然后谈了谈兴趣爱好第一问是问了一个dom的加载流程然后是让我用css3写一个微信小程序的tarbar栏,要求根据标签数量,大小自适应第二问,问了一些es6的特性,缓存加载,关于缓存的问题,面试官设置了5个场景,答的还算满意,然后问了一下有关http协议的几个状态码,关于计算机网络,让我解释了一下数据的传输流程,最后一个是让我在不...

2020-02-21 17:16:23 1406

原创 划分子网掩码

一、子网掩码的概述及作用子网掩码是一个应用于TCP/IP网络的32位二进制值,每节8位,必须结合IP地址对应使用。子网掩码32位都与IP地址32位对应,如果某位是网络地址,则子网掩码为1,否则为0。子网掩码可以通过与IP地址“与”计算,分离出IP地址中的网络地址和主机地址,用于判断该IP地址是在局域网上,还是在广域网上。子网掩码一般用于将网络进一步划分为若干子网,以避免主机过多而拥堵或过少...

2020-02-20 22:29:06 2338

原创 2020深信服网安测试笔试面经

深信服网安测试笔试面经,填空选择考的内容还算基础,填空选择主要考察了数据结构,还有划分计算机子网,c语言指针,防注入的一些知识点,编程题,第一题,计算时间复杂度,我没看懂第二道是从字符串1中删除字符串2的字符,我用java的ArrayList写的,不过在它提供的环境中,测试用例没有成功第二题,输入数字以空格隔开,每行3列,以0结尾,然后输出输入数字的行数这个,大脑短路了,没有合适的思路逻辑题,羊...

2020-02-20 20:35:03 2332

原创 vuex的五个属性

VueX 是一个专门为 Vue.js 应用设计的状态管理构架,统一管理和维护各个vue组件的可变化状态(你可以理解成 vue 组件里的某些 data )。Vuex有五个核心概念:state, getters, mutations, actions, modules。1. state:vuex的基本数据,用来存储变量2. geeter:从基本数据(state)派生的数据,相当于state的计...

2020-02-19 18:35:11 503

原创 vue面试题

一、对于MVVM的理解?MVVM 是 Model-View-ViewModel 的缩写。Model代表数据模型,也可以在Model中定义数据修改和操作的业务逻辑。View 代表UI 组件,它负责将数据模型转化成UI 展现出来。ViewModel 监听模型数据的改变和控制视图行为、处理用户交互,简单理解就是一个同步View 和 Model的对象,连接Model和View。在MVVM架构下,...

2020-02-19 15:55:53 395

原创 sqlmap常用操作命令

sqlmap常用操作命令一、sqlmap常用基础命令sqlmap Common operation command以下命令顺序即为sql注入常见步骤。sqlmap -u [“url”] --dbs #获取数据库sqlmap -u [“url”] --current-user #获取当前用户名称 :sqlmap -u [“url”] --current-db #获取当前数据库名称sql...

2020-02-18 11:15:50 963

原创 堆排序

堆排序的时间复杂度O(N*logN),额外空间复杂度O(1),是一个不稳定性的排序基本思想:1.首先将待排序的数组构造成一个大根堆,此时,整个数组的最大值就是堆结构的顶端2.将顶端的数与末尾的数交换,此时,末尾的数为最大值,剩余待排序数组个数为n-13.将剩余的n-1个数再构造成大根堆,再将顶端数与n-1位置的数交换,如此反复执行,便能得到有序数组2.1 构造堆将无序数组构造成一个大根...

2020-02-16 19:19:32 91

原创 Java设计模式之工厂模式(超详细版)

模式的定义与特点工厂方法(FactoryMethod)模式的定义:定义一个创建产品对象的工厂接口,将产品对象的实际创建工作推迟到具体子工厂类当中。这满足创建型模式中所要求的“创建与使用相分离”的特点。我们把被创建的对象称为“产品”,把创建产品的对象称为“工厂”。如果要创建的产品不多,只要一个工厂类就可以完成,这种模式叫“简单工厂模式”,它不属于 GoF 的 23 种经典设计模式,它的缺点是增加...

2020-02-15 12:22:03 216

原创 关于快速排序

快速排序之所比较快,因为相比冒泡排序,每次交换是跳跃式的。每次排序的时候设置一个基准点,将小于等于基准点的数全部放到基准点的左边,将大于等于基准点的数全部放到基准点的右边。这样在每次交换的时候就不会像冒泡排序一样每次只能在相邻的数之间进行交换,交换的距离就大的多了。因此总的比较和交换次数就少了,速度自然就提高了。当然在最坏的情况下,仍可能是相邻的两个数进行了交换。因此快速排序的最差时间复杂度和冒泡...

2020-02-15 12:15:32 77

原创 github refusing to merge unrelated histories

今天用git push代码时遇到的问题,本地仓库添加了github上的git仓库作为远程仓库,起名origin;$git remote add origin https://github.com/tielemao/T问题来了,本地仓库在想做同步远程仓库到本地为之后本地仓库推送到远程仓库做准备时报错了,错误如下:fatal: refusing to merge unrelated hi...

2020-02-14 22:55:18 170

原创 快速排序算法

一趟快速排序的算法是:1)设置两个变量i、j,排序开始的时候:i=0,j=N-1; [1]2)以第一个数组元素作为关键数据,赋值给key,即key=A[0]; [1]3)从j开始向前搜索,即由后开始向前搜索(j–),找到第一个小于key的值A[j],将A[j]和A[i]的值交换; [1]4)从i开始向后搜索,即由前开始向后搜索(i++),找到第一个大于key的A[i],将A[i]和A[j]...

2020-02-14 21:06:59 210

原创 java设计模式之单例模式

单例模式的定义与特点单例(Singleton)模式的定义:指一个类只有一个实例,且该类能自行创建这个实例的一种模式。例如,Windows 中只能打开一个任务管理器,这样可以避免因打开多个任务管理器窗口而造成内存资源的浪费,或出现各个窗口显示内容的不一致等错误。在计算机系统中,还有 Windows 的回收站、操作系统中的文件系统、多线程中的线程池、显卡的驱动程序对象、打印机的后台处理服务、应用程...

2020-02-14 20:39:11 89

原创 OSI参考模型与TCP参考模型

1974年 ISO(国际标准化组织)发布了著名的ISO/IEC7498标准,它定义了互联网的七层框架,即开放系统互联(OSI)参考模型。OSI通信模型主要有七个层次,由下往上分别是物理层数据链路层网络层传输层会话层表示层应用层1974年Kahb定义了最早的TCP/IP参考模型,1985年Leiner等人进一步开展研究,1988年Clark进一步完善了TCP/IP参考模型TCP...

2020-02-13 17:23:33 275

原创 Linux文件压缩命令,复制,删除,与移动

linux下文件的压缩与解压1、gzip/gunzipgzip/gunzip:主要是进行单个文件的压缩和解压缩的命令。示例:gzip hello.txt #执行压缩hello.txtls hello.txt.gz #查看文件信息gunzip hello.txt.gz #解压文件命令2、tar 命令tar可以用来打包文件,还可以把特定目录下的全部文件打包成一个总的文件,打包的同时还可以...

2020-02-13 16:30:38 1736

原创 xsspt网址

https://xsspt.comhttps://xss.pt/xss.phphttp://xssye.com

2020-02-13 11:47:16 3300

原创 微信小程序抓取session_id方法

整体流程如下:下载最新 charlesproxy软件并安装启动charlesproxy并设置代理配置手机端网络代理手机端安装 https 证书: 手机浏览器访问 http://chls.pro/ssl 安装证书启动某小程序去 charlesproxy 里查看抓到的请求,请求体里就包含 session_id注: 3和4的顺序一定不要颠倒, 须先配置手机端代理...

2020-02-13 11:42:06 2211

原创 如何防止SQL注入攻击?

如何防止SQL注入攻击?以下建议可以帮助防止SQL注入攻击成功:不要使用动态SQL避免将用户提供的输入直接放入SQL语句中;最好使用准备好的语句和参数化查询,这样更安全。不要将敏感数据保留在纯文本中加密存储在数据库中的私有/机密数据;这样可以提供了另一级保护,以防攻击者成功地排出敏感数据。限制数据库权限和特权将数据库用户的功能设置为最低要求;这将限制攻击者在设法获取访问权限时可以执行...

2020-02-12 19:16:23 342

原创 递归算法

递归(recursion):程序调用自身的编程技巧。递归满足2个条件:1)有反复执行的过程(调用自身)2)有跳出反复执行过程的条件(递归出口)递归例子:(1)阶乘 n! = n * (n-1) * (n-2) * ...* 1(n>0)//阶乘int recursive(int i){int sum = 0;if (0 == i)return (1);...

2020-02-12 13:26:35 112

原创 git如何上传本地文件到github仓库(超详细教程)

一、 git的下载1.官网下载2. 直接下载压缩包3.镜像下载话不多说,开始下载(1)官网Git官网https://git-scm.com/download/win官网提供最安全的下载路径,不存在损害您的计算机对的说法,但是如果你没有科学上网,你的下载速度将会十分缓慢。(2)直接下载压缩包官网下载速度感人, 第三方网站下载您可能会担心软件的安全性。在这里提供Git压缩包,直接下...

2020-02-11 21:34:41 28267 7

原创 TCP传输三次握手与四次握手

为了建立连接TCP连接,通信双方必须从对方了解如下信息:三次握手1、对方报文发送的开始序号。2、对方发送数据的缓冲区大小。3、能被接收的最大报文段长度MSS。4、被支持的TCP选项。在TCP协议中,通信双方将通过三次TCP报文段彭对以上信息的了解,并在此基础上建立一个TCP连接,而通信双方的三次TCP报文段的交换过程,也就是通常所说的TCP连接建立实现的三次握手(Three-Way ...

2020-02-11 11:45:21 187

原创 UDP与TCP的一些区别

UDP 是User Datagram Protocol的简称, 中文名是用户数据报协议,是OSI(Open System Interconnection,开放式系统互联) 参考模型中一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务, 是UDP的正式规范。UDP在IP报文的协议号是17。UDP协议与TCP协议一样用于处理数据包,在OSI模型中,两者都位于传输层,处于IP协议的上一层。U...

2020-02-11 11:34:36 173

原创 Java jvm的内存管理

一.综述如果你学过C或者C++,那么你应该感受过它们对内存那种强大的掌控力。但是强大的能力往往需要更强大的控制力才能保证能力不被滥用,如果滥用C/C++的内存管理那么很容易出现指针满天飞的情况,不出问题还好,一出问题debug起来简直让人头疼得不要不要的。借用一句话,“指针一时爽,重构火葬场”。而对java程序员来说,则没有这样的烦恼,因为java直接将内存管理交由jvm来管理,这样程序员在编...

2020-02-11 11:27:03 134

原创 RFC:Request For Comments

RFC:Request For Comments目录编辑机制处理过程历史文件架构发展历程分类文档阅读Request For Comments(RFC),是一系列以编号排定的文件。文件收集了有关互联网相关信息,以及UNIX和互联网社区的软件文件。目前RFC文件是由Internet Society(ISOC)赞助发行。基本的互联网通信协议都有在RFC文件内详细说明。RFC文件还额外加...

2020-02-02 23:04:30 508

空空如也

空空如也

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

TA关注的人

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