自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(30)
  • 资源 (1)
  • 收藏
  • 关注

原创 每天一道算法题(十六)

最长回文子串给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。示例 1:输入: “babad”输出: “bab”注意: “aba” 也是一个有效答案。示例 2:输入: “cbbd”输出: “bb”采用中心扩展法/** * @param {string} s * @return {string} */var longestPalindrome = function(s) { if(!s || s.length < 2){

2020-05-31 23:32:25 169

原创 vue源码学习之异步更新队列

异步更新队列update()src/core/observer/watchers.js在执行dep.notify()之后,watcher就会执行update()方法。 update () { // 通知更新 /* istanbul ignore else */ if (this.lazy) { this.dirty = true } else if (this.sync) { this.run() } else { queueWa

2020-05-31 20:59:00 312

原创 vue源码学习之数据响应式

数据响应式数据的变化会作用于UI而不需要通过DOM操作。在原理上,主要是采用Object.defineProperty(),通过对对象的setter属性进行拦截,从而将数值的变化转换围UI的变化。在初始化过程中,会调用initState()方法,会初始化data,props等。数据初始化src/core/instance/state.jsexport function initState (vm: Component) { vm._watchers = [] const opts = vm

2020-05-31 14:12:26 223

原创 vue源码学习之初始化过程

初始化过程初始化过程:init -> $mount -> compile -> new Watcher -> render -> updatesrc/platforms/web/runtime/index.js:实现$mountsrc/core/index:全局apisrc/core/instance/index:声明vue构造函数src/platforms/web/entry-runtime-with-compiler:覆盖了$mountsrc/core/in

2020-05-30 17:50:35 284

原创 每天一道算法题(十五)

验证二叉搜索树给定一个二叉树,判断其是否是一个有效的二叉搜索树。假设一个二叉搜索树具有如下特征:节点的左子树只包含小于当前节点的数。节点的右子树只包含大于当前节点的数。所有左子树和右子树自身必须也是二叉搜索树。示例 1:示例 2:用迭代的方法去实现/** * Definition for a binary tree node. * function TreeNode(val) { * this.val = val; * this.left = this.ri

2020-05-29 22:57:24 201

原创 每天一道算法题(十三)

解码方法一条包含字母 A-Z 的消息通过以下方式进行了编码:‘A’ -> 1‘B’ -> 2…‘Z’ -> 26给定一个只包含数字的非空字符串,请计算解码方法的总数。示例 1:输入: “12”输出: 2解释: 它可以解码为 “AB”(1 2)或者 “L”(12)。示例 2:输入: “226”输出: 3解释: 它可以解码为 “BZ” (2 26), “VF” (22 6), 或者 “BBF” (2 2 6) 。...

2020-05-16 22:23:21 242

原创 每天一道算法题(十二)

两数相除给定两个整数,被除数 dividend 和除数 divisor。将两数相除,要求不使用乘法、除法和 mod 运算符。返回被除数 dividend 除以除数divisor得到的商。整数除法的结果应当截去(truncate)其小数部分,例如:truncate(8.345) = 8 以及 truncate(-2.7335) = -2示例 1:输入: dividend = 10, divisor = 3输出: 3解释: 10/3 = truncate(3.33333…) = truncate

2020-05-14 22:18:21 305

原创 每天一道算法题(十一)

水壶问题有两个容量分别为 x升 和 y升 的水壶以及无限多的水。请判断能否通过使用这两个水壶,从而可以得到恰好 z升 的水?如果可以,最后请用以上水壶中的一或两个来盛放取得的 z升 水。你允许:装满任意一个水壶清空任意一个水壶从一个水壶向另外一个水壶倒水,直到装满或者倒空示例 1: (From the famous “Die Hard” example)输入: x = 3, y = 5, z = 4输出: True示例 2:输入: x = 2, y = 6, z = 5输出

2020-05-13 23:13:02 264

原创 每天一道算法题(十)

Pow(x,n)实现 pow(x, n) ,即计算 x 的 n 次幂函数。示例 1:输入: 2.00000, 10输出: 1024.00000示例 2:输入: 2.10000, 3输出: 9.26100示例 3:输入: 2.00000, -2输出: 0.25000解释: 2-2 = 1/22 = 1/4 = 0.25说明:-100.0 < x < 100.0n 是 32 位有符号整数,其数值范围是 [−231, 231 − 1] 。/** * @p

2020-05-12 22:44:55 248

原创 JavaScript搜索算法

顺序搜索也称线性搜索,是最基本的搜索算法,原理就是将每一个数据结构中的元素和要找的元素进行比较,是最低效的一种搜索算法。先创建一个Search类,里边就只有一个array属性。class Search{ constructor(){ this.array = [5,4,3,2,1] }}class Search{ constructor(){ this.array = [5,4,3,2,1] } sequentialSearch(val){ for(

2020-05-12 13:26:20 293

原创 JavaScript排序算法之堆排序

堆排序是一种很高效的算法,这种算法把数组当作二叉树来管理。索引0就是树的根节点除根节点外,任意节点N的父节点是N/2节点L的左子节点是2*L节点R的右子节点是2*R+1来看张图理解一下:把数组[3,5,1,6,4,7,2]看作是下面的树。...

2020-05-12 11:41:04 213

原创 JavaScript排序算法之快速排序

快速排序快速排序也许是最常用的排序算法了。它的复杂度为O(nlogn),且它的性能通常比其他的复杂度为O(nlogn)的排序算法要好。和归并排序一样,快速排序也使用分治的方法,将原始数组分为较小的数组(但它没有像归并排序那样将它们分割开)。...

2020-05-11 12:02:25 203

原创 每天一道算法题(九)

跳跃游戏给定一个非负整数数组,你最初位于数组的第一个位置。数组中的每个元素代表你在该位置可以跳跃的最大长度。你的目标是使用最少的跳跃次数到达数组的最后一个位置。示例:输入: [2,3,1,1,4]输出: 2解释: 跳到最后一个位置的最小跳跃数是 2。从下标为 0 跳到下标为 1 的位置,跳 1 步,然后跳 3 步到达数组的最后一个位置。说明:假设你总是可以到达数组的最后一个位置。/** * @param {number[]} nums * @return {number} *

2020-05-10 22:25:24 187

原创 每天一道算法题(八)

缺失的第一个正数给你一个未排序的整数数组,请你找出其中没有出现的最小的正整数。示例 1:输入: [1,2,0]输出: 3示例 2:输入: [3,4,-1,1]输出: 2示例 3:输入: [7,8,9,11,12]输出: 1提示:你的算法的时间复杂度应为O(n),并且只能使用常数级别的额外空间。/** * @param {number[]} nums * @return {number} */var firstMissingPositive = functio

2020-05-09 23:29:35 188

原创 JS 中|| 和 && 运算符

|| 符号1、只要“||”前面为false,不管“||”后面是true还是false,都返回“||”后面的值。 console.log(false || true) // true console.log( 1 || true) // 1 Boolean(1) === true console.log( undefined || true) // true Boolean(undefined) === false 2、只要“||”前面为true,不管“||”后面是true还是false,都返回“

2020-05-09 16:02:04 299

原创 JavaScript排序算法之归并排序

归并排序归并排序是一种分治算法,其思想是将原始数组切分成较小的数组,直到每个小数组只有一个位置后进行排序,接着将小数组归并成较大的数组,直到最后一个排序完毕的大数组。归并排序性能不错,其复杂度为O(nlog^n)。class ArrayList{ constructor(){ this.array = [] } insert(item){ this.array.push(item) } toString(){ return this.array.join()

2020-05-09 12:10:20 261

原创 JavaScript排序算法之插入排序

插入排序插入排序每次都只排一个数组项,每一次选择一个项的时候,都会跟前一项进行比较,以升序为例,当插入项比前一项小的时候,就往前一项的前一项在进行比较,直到找到前一项比插入项小的时候,才插入。class ArrayList{ constructor(){ this.array = [] } insert(item){ this.array.push(item) } toString(){ return this.array.join() } inse

2020-05-09 11:27:27 290

原创 Javascript排序算法之选择排序

选择排序这个算法倒是非常容易理解,就是在数据结构中找到最小值,并放置在第一位,然后找第二小的值,以此类推。class ArrayList{ constructor(){ this.array = [] } insert(item){ this.array.push(item) } toString(){ return this.array.join() } swap(array,idx1,idx2){ [array[idx1],array[id

2020-05-09 11:26:12 203

原创 每天一道算法题(七)

字符串转换整数请你来实现一个 atoi 函数,使其能将字符串转换成整数。首先,该函数会根据需要丢弃无用的开头空格字符,直到寻找到第一个非空格的字符为止。接下来的转化规则如下:如果第一个非空字符为正或者负号时,则将该符号与之后面尽可能多的连续数字字符组合起来,形成一个有符号整数。假如第一个非空字符是数字,则直接将其与之后连续的数字字符组合起来,形成一个整数。该字符串在有效的整数部分之后也可能会存在多余的字符,那么这些字符可以被忽略,它们对函数不应该造成影响。注意:假如该字符串中的第一个非空格字

2020-05-08 23:05:25 242

原创 JavaScript排序算法之冒泡排序

冒泡排序冒泡算法在所有算法当中是最简单的,但是在运行时间方面,冒泡排序则是最差的。原理:比较任何相邻的项,如果第一个比第二个大,就交换彼此。元素项向上移动至正确的位置。class ArrayList{ constructor(){ this.array = [] } insert(item){ this.array.push(item) } toStri...

2020-05-08 13:18:06 202

原创 每天一道算法题(六)

连续的子数组和给定一个包含非负数的数组和一个目标整数 k,编写一个函数来判断该数组是否含有连续的子数组,其大小至少为 2,总和为 k 的倍数,即总和为 n*k,其中 n 也是一个整数。示例 1:输入: [23,2,4,6,7], k = 6输出: True解释: [2,4] 是一个大小为 2 的子数组,并且和为 6。示例 2:输入: [23,2,6,4,7], k = 6输出...

2020-05-07 23:40:50 186

原创 每天一道算法题(五)

表示数值的字符串请实现一个函数用来判断字符串是否表示数值(包括整数和小数)。例如,字符串"+100"、“5e2”、"-123"、“3.1416”、“0123"都表示数值,但"12e”、“1a3.14”、“1.2.3”、“±5”、"-1E-16"及"12e+5.4"都不是。/** * @param {string} s * @return {boolean} */var isNumber...

2020-05-07 22:48:58 197

原创 JavaScript数据结构之图

图图也是一种非线性数据结构,是一组由边连接的节点(或者顶点)。

2020-05-07 14:47:56 308

原创 每天一道算法题(四)

正则表达式匹配给你一个字符串 s 和一个字符规律 p,请你来实现一个支持 ‘.’ 和 ‘*’ 的正则表达式匹配。‘.’ 匹配任意单个字符‘*’ 匹配零个或多个前面的那一个元素所谓匹配,是要涵盖 整个 字符串 s的,而不是部分字符串。说明:s 可能为空,且只包含从 a-z 的小写字母。p 可能为空,且只包含从 a-z 的小写字母,以及字符 . 和 *。示例 1:输入:s...

2020-05-06 23:39:03 245

原创 每天一道算法题(三)

寻找两个有序数组的中位数给定两个大小为 m 和 n 的有序数组 nums1 和 nums2。请你找出这两个有序数组的中位数,并且要求算法的时间复杂度为 O(log(m + n))。你可以假设 nums1 和 nums2 不会同时为空。示例1:nums1 = [1, 3]nums2 = [2]则中位数是 2.0示例二:nums1 = [1, 2]nums2 = [3, 4]...

2020-05-06 22:45:11 166

原创 js动态传入函数名进行自执行

比如传入一个 fname这个参数,并且想要执行参数对应的的函数,可以使用eval()函数。function log(){ console.log('log')}let fname = log;fname() // 这样肯定报错eval(fname+'()') // 执行这个字符串 // log...

2020-05-06 18:39:02 1947

原创 while 语句中的赋值表达式问题 while(child = el.firstChild)

遇到一段很奇怪的代码,分享一下const fragment = document.createDocumentFragment();let child;while((child = el.firstChild)){ // 1 fragment.appendChild(child) // 2}return fragmentwhile里面到底是如何运行的呢?在第一行的括号里...

2020-05-06 16:02:20 5295 2

原创 每天一道算法题(二)

两数之和给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。示例:给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1]/** * ...

2020-05-05 23:13:59 189

原创 每天一道算法题(一)

两数相加给出两个 非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字。如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。您可以假设除了数字 0 之外,这两个数都不会以 0 开头。示例:输入:(2 -> 4 -> 3) + (5 -> 6 -> 4)输出:7 -> 0 ...

2020-05-05 15:41:34 308

原创 ES6中的Mixin

MixinJavaScript是单一继承的,也就是说只能继承一个父类,这样就不能够使用其他类的方法了。Mixin就是向一个类里面注入代码,使得一个类的功能能够混入到另一个类当中,实现多重继承的效果。Mixin就是一个正常的类,不仅定义的接口,还定义了接口的实现。子类通过在this对象上面绑定方法,达到多重继承的目的。class Person{ // 创建一个原型,里面只有属性 cons...

2020-05-04 15:18:30 402

uniapp 离线SDK Android-SDK@4.24.82145-20240723

由于百度网盘下载太慢了,为了方便大家下载,因此上传至 CSDN 供大家下载。 注意,在下载前记得查看版本号,当前资源对应 HBuilderX(4.24.2024072208)。

2024-08-30

uniapp 请求代码封装

在uniapp发送请求跟web的不同,而且通过uni.request这个方法进行调用。该资源是将uniapp 请求代码进行了封装,在uniapp上实现一个类似axios的请求方式。

2023-11-08

2022年JavaScript常见面试题

2022年JavaScript常见面试题

2023-07-15

browser.zip

引入browser.js可以使得ie兼容es6语法,browser.js为开发环境使用,browser.min.js为线上使用

2020-03-25

空空如也

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

TA关注的人

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