摘要:
方法一:思维定势,直接想到用栈 (比较蠢 5.09% 与 30.88%) var isPalindrome = function(s) { s = s.replace(/[^0-9a-zA-Z]/g, '').toLowerCase() const stack = [], len = s.lengt 阅读全文
摘要:
一、复杂度的表示方式 大O表示法,其中T代表的是算法需要执行的总时间,S表示的是算法需要的总空间 f(n)表示的是代码执行的总次数 T(n) = O(f(n)) S(n) = O(f(n)) 举个例子 function go(n) { var item = 0; //这里执行了一次 for (var 阅读全文
摘要:
XSS XSS(Cross site scripting) 跨站脚本攻击 网站存在漏洞,允许恶意用户注入恶意代码 例子,网站允许 img src 路径的拼接;写入可执行脚本 innerHTML 容易引发跨站脚本攻击 CSRF 什么是 CSRF CSRF(Cross-site request forg 阅读全文
摘要:
计算属性 计算属性只有在它的相关依赖发生改变时才会重新取值 Method method每次渲染的时候都会被执行 举一个栗子 <template>...<div> <p>计算属性: {{ getComputedTotal }}</p> <p>计算属性: {{ getComputedTotal }}</ 阅读全文
摘要:
桶排序 典型案例:arr1 [ 1, 2, 5, 2, 1, 8, 9, 5, 2, 8, 9, 10] 按照 arr2 [1, 5, 9, 8, 2, 10]的顺序排序 结果: [1,1,5,5,9,9,8,8,2,2,2,10] 思路: function solution(arr1, arr2) 阅读全文
摘要:
给定由一些正数(代表长度)组成的数组 A,返回由其中三个长度组成的、面积不为零的三角形的最大周长。 如果不能形成任何面积不为零的三角形,返回 0。 示例输入:[3,6,2,3]输出:8 代码 var largestPerimeter = function(A) { if (A.length < 3) 阅读全文
摘要:
内置函数提供的显式绑定 最近在开发中遇到使用arr.map(module.fun) 这样的写法时(在一个模块调用了另外一个模块的方法), 造成了函数中this丢失的问题, 显示为undefined, 因此去查阅一番资料,发现了一个不常用到的知识点: javascript内置函数提供的显式绑定 拿Ar 阅读全文
摘要:
问题一 动态导入import() 在 eslint-loader 的相关报错,error Parsing error: Unexpected token import 场景还原 webpack打包项目,项目中使用eslint进行语法检查,使用babel进行语法转化 项目需要用到路由懒加载,使用动态导 阅读全文
摘要:
为什么会有 Vuex 这个东西 ? 现代前端框架主要解决的是 事件 -> 状态 -> UI 将传统前端在两个过程的代码剥离出来,变得更加容易维护; vue的声明式渲染,解决了 状态 和 UI 的同步问题,从而使我们不需要由于状态发生改变去写大量的命令式改变 dom 的代码。 而类似于 vuex 这类 阅读全文
摘要:
使用defineProperty劫持数据属性的变化 例子一:有一个全局变量a,有一个全局函数b,实现一个`bindData`,执行后,a的任何赋值都会触发b的执行 // var a = 1;a = 1; // console.log(Object.getOwnPropertyDescriptor(w 阅读全文