javascript
文章平均质量分 73
墨水白云
学如才识,不日进,则日退。
展开
-
前端加密和nodejs加密的总结以及使用哪些加密方式和加密库的推荐
最近在前端项目和nodejs项目之间遇到了一个加密相关的问题,查了许多资料后发现心里更加迷糊了产生了不少问题比如:前端到底有哪些加密方式呢?一查各式各样的加密方式md5,rsa,aes,base64编码,sha1…等等,究竟该用哪几种呢?有没有相关的库让我去使用呢?一查各种各样的库,也很多如:crypto-js,bcryptjs,jsencrypt等。原创 2023-04-11 19:04:49 · 1612 阅读 · 1 评论 -
vue[打包chunk-vendors.xxx.js文件过大,vue项目性能优化解决方案,前端性能优化知识总结]
虽然看上去这个内容也就2M左右的大小,但是在线上却出现需要加载10几秒的时间,这对于一个项目来说是非常的有问题的。因此解决方式如下:首先得知道为什么这个文件比较大,chunk-vendors.xxx.js是一个保存着各种相关依赖的关系的文件,比如导入的elmentUI、echarts、vue、vue-router等各种依赖解决方案:1.开启Gzip压缩2.路由懒加载3.检查图片等大小,看看能不能对加载的图片进行优化// 使用webpack-bundle-analyzer检查打包加载的各种依赖大.原创 2020-09-09 11:07:47 · 27613 阅读 · 1 评论 -
js[xss攻击和csrf攻击的原理以及防御措施]
原理是利用受信任网站A的登录漏洞,危险网站B通过诱导拿到登录状态的Cookie对A网站进行访问,从而达到B网站人员获取用户在A网站的各种信息与相关api操作的目的。用户通过表单输入框等手段输入js脚本,在浏览器或者服务器运行起来从而起到盗用其他用户信息,注入广告等破坏页面结构的行为手段。防御的核心无非就是限制或者对用户输入的内容进行一些专项处理之后在保存或者返回。2.csrf本身是利用网站的登录漏洞攻击,xss是提供js代码注入篡改网站攻击。2.在不登出A的情况下,访问危险网站B。原创 2021-03-16 11:30:33 · 948 阅读 · 0 评论 -
js[es6相较于es5常用内容整理]
es6又称es2015,这个是es中的一个大版本的改变,因此相较于es5来说有了许多的变化。而后续的es6以上的版本通常是以年份来叫如es2015(es6)、es2016(es7)、es2017…原创 2020-06-30 16:38:21 · 280 阅读 · 1 评论 -
js[与cookie操作相关的插件收藏]
在现在的前端开发中cookie的大多数功能都已经被sessionStorage和localStorage这两个h5的功能替代,但是cookie任然有着其不可替代的一些部分。比如: cookie可以自定义过期时间,这可以让我们自由的设置用户相关信息的存储,以便于做出那些免登录相关的功能(在我看来这是当前cookie最为实用的功能了)cookie有着自定义访问域的功能cookie可以随着浏览器接口提交到服务器…现在市场上已经有比较优秀的cookie插件了,因此这里收藏一个好用的插件npm inst原创 2020-09-02 11:11:41 · 153 阅读 · 0 评论 -
js[DOM、BOM、Ecmascript][记录]
js[Dom、BOM、Ecmascript]探究原创 2020-06-28 15:03:52 · 234 阅读 · 1 评论 -
JS[原型,原型链,类,继承]探究
js中关于原型、方法相关的内容不同的人理解与记忆的方式各有不一,而官方的说法又是非常难以理解,这里仅记录个人探讨与自己的理解。原创 2020-06-28 10:58:42 · 172 阅读 · 1 评论 -
js[进程、线程、消息队列、事件循环]探究
js[单线程、多线程、任务、队列]探究原创 2020-06-23 15:44:44 · 209 阅读 · 0 评论 -
js[垃圾回收机制]探索
js[垃圾回收机制]探索原创 2020-06-23 13:14:17 · 126 阅读 · 0 评论 -
js[this的使用与探索]
js[this的使用与探索]原创 2020-06-23 11:08:43 · 161 阅读 · 0 评论 -
js[浏览器引擎及对应前缀][整理]
js[浏览器引擎以及不同引擎带来的变化]探究原创 2020-06-22 17:11:23 · 465 阅读 · 0 评论 -
js[对象Object常用方法与属性][整理]
参考:https://javascript.ruanyifeng.com/stdlib/object.html#toc0对象Object创建常用方式:2种方式var obj = {};//创建一个空对象 => {}var obj = new Object(); //创建一个空对象 => {}对象Object的静态方法:13种1、Object.keys(arr) ------返回一个数组。该数组的成员是该对象的键名。(只返回可枚举的属性)------对象本身是没有长度的因此可以借助O原创 2020-06-18 14:37:52 · 443 阅读 · 0 评论 -
js[执行上下文、执行栈]探究
js[运行环境与应用上下文]探究原创 2020-06-17 16:15:06 · 134 阅读 · 0 评论 -
js[闭包理解、作用]探究
js[闭包原理、作用]探究原创 2020-06-17 15:59:45 · 116 阅读 · 0 评论 -
js[浅拷贝与深拷贝]探究
js[浅拷贝与深拷贝]探究原创 2020-06-11 17:27:15 · 139 阅读 · 0 评论 -
js[数据类型]探究
数据类型基本类型:字符串(String)、数字(Number)、布尔(Boolean)、对空(Null)、未定义(Undefined)、Symbol(es6引入)引用类型:对象(Object)…1.Number类型Number类型包含浮点数和整数。NaN表示非数字类型。在数据的转换过程中可能会出现这个值。—isNaN()函数,用于判断是否是一个非数字类型转换Number()转型函数,可以用于任何数据类型;parseInt(),将值转换为整型,用的比较多;parseFloat();将值转换原创 2020-06-11 16:03:21 · 123 阅读 · 0 评论 -
js[异步编程理解(promise/回调函数/async-await)、异步转同步的方式]探究
Javascript语言的执行环境是"单线程",而Javascript语言将任务的执行模式分成两种:同步(Synchronous)和异步(Asynchronous)首先得意识到一个问题何为异步编程?何为同步编程?直接上网上的优秀文章:https://zhuanlan.zhihu.com/p/94686991总之同步编程:就是机械一行一行的执行代码直到代码结束,一旦出现问题就执行不下去了异步编程:就是机械执行到异步代码的时候会将这个代码内容暂时挂起,然后继续执行下面内容,当挂起的内容得到响应的时原创 2020-06-11 14:28:07 · 2022 阅读 · 0 评论 -
JS[call()方法和apply()方法]探究
简介…原创 2020-04-26 11:40:26 · 152 阅读 · 0 评论 -
js[引用类型之内置对象][整理]
总结:原创 2020-04-26 11:22:53 · 203 阅读 · 0 评论 -
js[认识块级作用域及let、var、const的区别]
11原创 2020-04-26 11:18:57 · 179 阅读 · 0 评论 -
js[几种常规加密解密方式记录]
Base64加密解密(js-base64)Base64加密解密是比较简单,也是安全性较差的一种加密方式,一般用于加密一些不太重要但是又不想他人直接看到的数据,优势是使用简单。参考:https://www.npmjs.com/package/js-base641.安装依赖npm install js-base642.引入import { Base64 } from 'js-base64...原创 2020-04-17 14:45:07 · 1453 阅读 · 0 评论 -
js[数组Array常用方法与属性][整理]
总结:1、数组创建有3种方式var arr1 = new Array(); //创建一个空数组var arr2 = new Array(2); // 创建一个包含20项的数组var arr3 = new Array(“lucy”,“Tom”); // 创建一个包含3个字符串的数组2、数组中的原型方法有19种(es5)2.1join():将数组的元素组起一个字符串,以separator...原创 2020-03-03 13:11:33 · 443 阅读 · 0 评论 -
js[中英文排序-获取中文拼音]
英文字母排序数组示例:arr = [ { cat: "Aqwe"}, { cat: "gasd"}, { cat: "Cwqe"}, { cat: "csdw"}, { cat: "Yqqa"}, { cat: "csdw"}, { cat: "dsdw"}, { cat: "Dbdw"}, ...原创 2020-01-08 17:49:53 · 1442 阅读 · 0 评论 -
js[esmodule与NodeJS(commonJs)导入导出的理解与区别]
按理说目前使用js开发某些内容的时候,往往都是会安装NodeJs环境的,因此使用node相关的导入导出是不会有问题的,但是在开发过程中我们最好还是使用es6的导入导出模块.以vue开发为例子,webpack配置相关的内容大部分都是用require来进行导入导出的,而.vue相关的文件中,以及一些常规的.js文件中都是使用es6来导入导出。开发使用es6,脚手架配置则用nodejs导入导出。原创 2019-12-02 16:55:45 · 670 阅读 · 1 评论