![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JS
西域男孩1028
Android HTML JAVA
展开
-
仿携程实现带价格的日历
参考文章:https://blog.csdn.net/BetterGG/article/details/80570183日历在参考文献上进行了修改,使用JS+HTML+ES6/7,并对日历进行了进一步封装,使其使用更加方便,同时对样式进行了可配置化,用户可以通过自己的需求来修改需要的样式实现效果如下:属性属性 类型 描述 默认值 element DOM 需要添加到的DOM元素 false bgColor String 选中后的背景颜原创 2020-05-19 15:54:14 · 1215 阅读 · 0 评论 -
反转链表
递归实现:实现逻辑是两个两个进行比较 找到最后一个节点 让newHead=最后一个节点 将最后一个节点的next指向老的head 将老的next置为null //递归反转 reverseList() { //1 2 let head = this.head; function reverse(head) { //终止条件 if (head == null || head.next === null) ret原创 2020-05-09 17:20:44 · 112 阅读 · 0 评论 -
JS实现一个判断数据类型的工具
utils.jslet types = [ "Number", "String", "Undefined", "Null", "Boolean", "Array", "Object",];let utils = {};for (let i = 0; i < types.length; i++) { const type = types[i]; ...原创 2020-04-10 09:06:00 · 239 阅读 · 0 评论 -
跨域及解决方案
跨域及解决方案 jsonp(常用) cors(常用) window.name document.domain(特定场景) postMessage(H5) webpack proxy (webSocket)(常用) ngix方向代理 1. 什么是跨域拿当前HTML页面的地址和在页面中Ajax请求的API地址做比较: ...原创 2020-02-28 10:05:04 · 112 阅读 · 0 评论 -
常见web攻击
常见的web网络攻击 XSS CSRF 点击劫持 SQL注入 OS注入 请求劫持 DDOS 1. XSScross site scripting,跨站脚本攻击,跨站脚本攻击是指通过存在安全漏洞的web网站注册用户的浏览器内运行非法的HTML标签或JavaScript进行的一种攻击1.1 造成的影响 利用虚拟...原创 2020-02-27 11:37:02 · 241 阅读 · 0 评论 -
webpack4.0
webpack4.01.快速上手1.1 配置webpack webpack,webpack-cli yarn add webpack webpack-cli -D 1.2 创建src文件mkdir src1.3 基本配置文件 webpack.config.js 修改package.json webpack.config.jslet...原创 2020-02-23 22:43:16 · 245 阅读 · 0 评论 -
浏览器的eventloop(事件环)
EventLoop(浏览器下的事件环)1.任务分类 宏任务(macrotask) UI渲染,setTimeOut,setInterval,setImmediate,I/O等 优先级:主代码>setImmediate>MessageChannel>setTimeOut/setInterval 微任务(microtask) ...原创 2020-02-21 01:51:20 · 253 阅读 · 0 评论 -
手写Promise源码
1.Promise解决的问题 回调嵌套,回调地狱 错误捕获不好处理 多个异步同步问题 Promise.all 2.版本问题 Promise是一个类,默认浏览器高版本或node都是自带Promise的 如果低版本没有自带,我们可以使用es6-promise插件 3.promise A+规范3.1 三个状态 Pending等待态 ...原创 2020-02-20 23:53:22 · 151 阅读 · 0 评论 -
DOM事件,事件委托
1.什么是事件事件就是一件事情或者一个行为(对于元素来说,它的很多事件都是天生自带的),只要我们去操作这个元素,就会触发这些行为,事件就是元素天生自带的行为,我们操作元素,就会触发相关的事件行为2.事件绑定给元素天生自带的事件行为绑定方法,当事件触发,会把对应的方法执行元素.onclick=function(){}3.元素天生自带的事件3.1.鼠标事件 c...原创 2020-02-14 03:37:31 · 213 阅读 · 0 评论 -
正则
1.正则是什么正则是一个用来处理字符串的规则 正则只能用来处理字符串 处理一般包含两方面 验证当前字符串是否符合某个规则正则匹配 把一个字符串中符合规则的字符获取到正则捕获 2.正则的组成部分每一个正则都是有修饰元字符,修饰符两部分组成 正则两个斜杠之间包起来的都是元字符,斜杠后面出现的都是修饰符 ...原创 2020-02-12 22:35:27 · 112 阅读 · 0 评论 -
Call,Apply,Bind
1.call语法:[fn].call([this],[params]...) fn.call:当前实例(fn)通过原型链的查找机制,找到Function.prototype上的call方法=>function call(){[native code]} fn.call():把找到的call方法执行 内部原理: 首先把要操作函数中的this关键字变为cal...原创 2020-02-12 17:58:35 · 79 阅读 · 0 评论 -
JS盒子模型
1.操作DOM的属性和方法1.1.获取元素或元素集合getElementById 上下文只是document(只有document这个实例的原型链上才能找到这个方法,其他实例都找不到) ID重复了获取第一个 IE6~7中会把表单元素的name当做id使用 getElementsByTagName 获取当前上下文中,所有子子孙孙中标签名叫做xx...原创 2020-02-11 20:12:26 · 380 阅读 · 0 评论 -
常见面试题一
1.判断条件下的变量提升/* * 变量提升 * var foo; * bar=aaafff000; */var foo = 1;function bar() { /* * 形参赋值:无 * 变量提升 * var foo; (不管条件是否成立,都要进行变量提升,新浏览器中对于判断体中的函数只是提前声明)...原创 2020-02-11 00:02:15 · 96 阅读 · 0 评论 -
JS中的面向对象编程详解
1.singleton pattern(单例模式)表现形式:var obj={ xxx:xxx}单例设计模式中,obj不仅仅是对象名,它被称为命名空间[nameSpace],把描述事物的属性存放到命名空间中,多个命名空间是独立开来的,互不冲突作用:把描述同一件事物的属性和特征进行分组,归类(存储在同一个堆内存空间中),因此避免了全局变量之间的冲突和污染...原创 2020-02-09 21:41:05 · 300 阅读 · 0 评论 -
JS中的堆栈内存及闭包
1.数据值操作机制1.1.值类型var a=1var b=ab=2console.log(a);//=>1 打开浏览器是形成一个全局作用域:栈 变量声明:var a , var b 代码自上而下执行:a=1,b=a(将a的值复制一份放到新位置b上,a与b没有关联),b=2给b重新赋值为2,输出a,这时a依然是原来的1 1.2.引...原创 2020-02-09 00:35:22 · 808 阅读 · 1 评论