- 博客(17)
- 收藏
- 关注
原创 深入学习JSON.stringify()
首先看一下MDN上对JSON.stringify()的解释JSON.stringify() 方法将一个 JavaScript 对象或值转换为 JSON 字符串,如果指定了一个 replacer 函数,则可以选择性地替换值,或者指定的 replacer 是数组,则可选择性地仅包含数组指定的属性语法:JSON.stringify(value[, replacer [, space]])value :要转换的值replacer :如果该参数是一个函数,则在序列化过程中,被序列化的值的每个属性都会经过该
2021-05-12 18:54:15
825
2
原创 正则入门
想看看模板编译这块,想看看vue源码的的时候,发现开头就是一大堆正则,各种匹配,这都匹配个啥啊,无奈,只能翻了翻已经长毛了的正则小册子挨个对了…创建正则的方式字面量创建字面量创建的方式是使用/ /包裹,也是使用最多的方式了吧,就是不能在里面使用变量let reg = 'www.selfimpr.com'console.log(/e/.test(reg)) //true//如果是使用变量的话 let a = 'u'console.log(/a/.test(reg)) //false对象.
2021-04-28 17:17:51
319
4
原创 call,apply和bind
在学习this的时候,看到了几个方法call,apply和bind还有一个new 运算符,就学习了一下它们的概念和原理Function.prototype.call()function.call(thisArg,arg1,arg2…)使用一个指定的this值 和单独给出的一个或多个参数来调用函数,返回值是调用有指定this值和参数的函数的结果注意:1.非严格模式下如果thisArg是null 或者是 undefined 则自动替换为全局对象2.thisArg可以是基本数据类型,call会自.
2021-04-24 22:37:20
1125
6
原创 this解析
this指向的问题也是JavaScript中的难点之一了,也是面试常问的问题,很多时候对this指向的问题就很懵逼,明明应该是指向他,为什么又指向他了…所以我就学习了一下这方面的知识,整理了一下,希望能够帮助大家为什么要用this?首先看一段代码function identify(){ return this.name.toUpperCase()}function speak(){ var greeting = '你好,我是'+identify.call(this) .
2021-04-21 15:26:24
1150
18
原创 宏任务,微任务与队列
console.log('script start');setTimeout(function () { console.log('setTimeout');}, 0);Promise.resolve() .then(function () { console.log('promise1'); }) .then(function () { console.log('promise2'); });console.log('script end');上面的
2021-04-17 20:57:32
1144
3
原创 死磕javascript的手写面试题
1.实现lodash的_.get方法function _getValue(target, valuePath, defalutVal) { let valueType = Object.prototype.toString.call(target) console.log(valueType) // if (valueType == "[object Array]") { let paths = valuePath.replace(/\[(\d+)\]/, `.$1`).split('
2021-04-13 15:45:25
3539
34
原创 理解闭包
前言闭包可以说是最最最最最最常见的面试题之一了,很多人面试的时候都被问到过闭包的知识,闭包的概念是什么?闭包的好处和坏处是什么?闭包有哪些应用场景了?前两天朋友面试的时候也被问到过这个问题,网上的答案也有很多:有的说能够读取其他函数内部作用域的函数就是闭包,也有的说所有的函数都是闭包,哪怕是全局作用域上的,因为它能获取到全局作用域上的变量.....答案也是很不统一,这就让还是新手的我对于答案有点举棋不定了,于是重温了一下《你不知道的javascript上卷》和《javascript高级程序第四版》,看了
2021-04-10 17:30:12
5432
32
原创 理解ES6Class的继承
基本用法class之间可以通过extends关键字实现继承,写法上比es5更加清晰 class Point{} class FriendPoint extends Point{ //FriendPoint 继承了Point类的所有属性和方法 constructor(x,y,name){ super(x,y) //调用父类的constructor(x,y) this.friend= color } toString(){
2021-04-08 14:27:51
3461
17
原创 理解js继承的六种方式
原型链继承原型链继承是ECMAScript的主要继承方式。其基本思想就是通过原型继承多个引用类型的属性和方法。什么是原型链?每个构造函数都会有一个原型对象,调用构造函数创建的实例会有一个指针__proto__指向原型对象,这个原型可能是另一个类型的实例,所以内部可能也有一个指针指向另一个原型,然后就这样形成了一条原型链。代码:function SuperType() { this.property = true;}SuperType.prototype.getSuperValue = fun
2021-04-05 22:33:30
7593
29
原创 理解javascript中的原型
原型模式每个函数都会创建一个prototype属性,这个属性是一个对象,包含着由特定引用类型的实例共享的属性和方法,这个对象就是调用构造函数创建的对象的原型,好处就是,在它上面定义的属性和方法可以被对象实例共享,原来在构造函数中直接赋值给对象实例的值可以直接赋值给他们的原型。function Person(){}Person.prototype.name = '小白'Person.prototype.age = 22Person.prototype.job = '开发'Person.protot
2021-04-02 23:59:31
2633
10
原创 整理九道关于javascript字符串的笔试题
1.写一个方法去掉字符串的空格let str = ' abc aa s '//第一种function trim(str){ let reg = /\s+/g if(typeof str == 'string'){ return str.replace(reg,'') }}trim(str)//第二种str.split(' ').join('')2.去除字符串中最后一个指定的字符或者是字符串let str = 'abaaaaeaad'function
2021-03-30 16:21:56
2512
3
原创 数组的常用方法整理
1.创建数组的方法第一种是使用Array构造函数参数: 1.new Array(arg1,arg2....) //传入的参数会成为数组的每一项 2.new Array(length) //length为数字的话返回长度为length的数组 否则创建一个只有一项length的数组第二种是Array.form() /** Array.form(arg1,arg2,arg3) 第一个参数 类数组对象,即任何可迭代的结构,或者是有一个length属性和可索引元素的结构 第二个
2021-03-28 03:18:55
6694
14
原创 将1,2,3,4...转换为一,二,三,四....
方法:function getCap(num) { var capArr = ['零', '一', '二', '三', '四', '五', '六', '七', '八', '九']; let c = ''; num = '' + num; //隐式转换为字符串 for(let i = 0;i < num.length ; i++){ c += capArr[parseInt(num.charAt(i))] } re
2021-03-16 09:58:16
981
原创 浏览器环境使用less的跨域问题
浏览器环境下使用less<link rel="stylesheet/less" type="text/css" href="styles.less" /><script src="//cdnjs.cloudflare.com/ajax/libs/less.js/3.11.1/less.min.js" ></script>使用link引入less文件 再使用script引入js文件,但是打开文件之后会跨域解决方法:1.直接将less写在html里面<!D
2021-03-11 23:16:18
3840
10
原创 react+antd4表格添加行 编辑 删除功能
配置表格头部 columsconst columns = [{title: ‘姓名’,dataIndex: ‘name’,inputType: ‘text’,},{title: ‘得分(10)’,dataIndex: ‘ppt’,inputType: ‘number’,max: 10,},{title: ‘得分(10)’,dataIndex: ‘cg’,inputType: ‘number’,max: 10},{title: ‘得分(10’,dataIndex: .
2021-03-05 20:52:24
6174
9
原创 Ant Design Pro V5删除自带的国际化
Ant Design Pro V5删除自带的国际化最近做了一个基于Ant Design pro v5 + umi3的集团晋升系统,运行项目的时候,路由那边自定义name的时候会触发框架自带的国际化,控制台那边一大片报错,看了一下文档,运行了一下npm run i18n-remove,但是会报错,后来安装了一下eslint相关的,npm i @typescript-eslint/eslint-plugin eslint-plugin-eslint-comments eslint-plugin-jest es
2021-03-03 17:19:21
4119
1
原创 uni-app h5端上传非视频图片文件
刚工作一年的小白,最近做的一个项目是用uni-app做一个h5端跟小程序端的关于租房,招聘一类的项目,这个项目没什么难点的,就是h5端的微信支付,分享,后来这些都搞定了,虽然也是花了不少时间,后来马上要交付项目的时候,发现在招聘的地方有个应聘的表单,这个表单让传简历,一般简历都是word文档,我用的uni-app框架,在他的文档里面找如何上传非视频图片文件,发现并没有上传非视频图片文件这一说,有一...
2019-04-29 11:22:24
5412
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人