自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

原创 通过递归实现深拷贝

//递归实现深拷贝 Object.prototype.clone=function(){ console.log(this.constructor) //创建变量,如果调用的是数组,创建数组,如果是对象,就创建对象 let a = this.constructor ===Array ? [] : {}; // 循环向 空数组或者空对象中进行添加属性和属性值 for(var e in this){

2020-12-03 19:10:06 434

原创 面试题

1.项目开发流程 1.安装环境 安装node,cnpm,配置淘宝镜像源,vue脚手架,开发工具,git,...一些其他开发所需要的工具。 2创建vue脚手架项目 使用vue-cli创建项目,下载依赖和需要用到的插件,axios,element-ui等等, 并在src文件下的main.js下引入各种插件,进行测试 在vue.config.js文件中对项目进行一些基础的配置 设置跨域,设置端口号,开启https等等。 封装项目的API接口 创建api.js文件夹中对需要的接口进行封装 在src文

2020-12-01 21:55:20 267

原创 async,await 的详解

关于async 关键字:async 其实就是promise的语法糖,可以让普通函数变为一个异步函数,返回的是一个promise对象 举个栗子: let a=function (){ //普通函数 return 1 } a() console.log(a()) // 1 let b = async function(){ //关键字async 变为异步函数 return 1 //promise里的resole成功回调

2020-11-25 11:19:53 640

原创 Promise

promise是什么? 直接打印看看就知道了(简单粗暴!) 从语法上说,promise 是一个对象,从它可以获取异步操作的的最终状态(成功或失败) Promise是一个构造函数,身上有all,reject,resolve这几个方法,原型上有then,catch,hasOwnProperty,toString等眼熟的方法。所以Promise new出来的对象肯定就有then,catch方法。接下来让我们new一个看看吧! let promise=new Promise((resolve,reject)=

2020-11-24 19:27:46 223 1

原创 常用的继承方法

继承的概念: 通过某种方式让一个对象可以访问到另一个对象中的属性和方法,我们把这种方式称之为继承 下面来讲几个常用的继承方法 1.原型链继承 优点:可以让子构造函数继承父构造函数的原型上的属性和方法 缺点:不可以传参数 举个麻辣栗子: //父构造函数 function Fu(name,age){ this.name='爸爸'; this.age=50; this.say=function(){ console.log("我是父

2020-11-24 17:01:23 251

原创 原型和原型链

1.原型是什么 ? 每个函数对象下都有一个prototype属性,这个属性就是原型 2. 原型的作用? 就是共享方法 3.prototype constructor __proto__ 三者之间的关系属性(参考三者关系图)? 实例化对象和原型的constructor指向构造函数 构造函数的prototype属性指向原型对象 实例化对象的__proto__属性指向原型对象 4.原型链(参考原型链图) 实例化对象的__proto__指向构造函数的prototype 构造函数prototype的__prot

2020-11-24 11:07:49 348 3

原创 es6中的class类

类和对象: 对象:一切皆对象 特指的某一个,通过实例化一个具体的对象 类:抽象了对象的公共部分,它泛指某一大类 class A{ constructor(name,age){ this.name=name; this.age=age } say(){ console.log("你好") } } var B=new A('哈哈',80) console.log(B.name,B.age) B.say("aaa") constructor 不需要调用 只要创建new实例就会自动调

2020-11-24 10:42:58 131

原创 块级作用域和函数作用域

1.块级作用域 什么是块级作用域? {} 这个花括号里面的作用域就是块级作用域。 var i = 100 for(var i=0; i<5; i++){ console.log(i) //1,2,3,4 } console.log(i) //5 使用var的话就会导致在for循环里面的i覆盖掉了上面的i,然后i的值就发生了改变,所以我们需要一块私有领域来包裹住for里面产生的变量,所以产生了块级作用域。 解决方法:换成let或者const就OK了。 再 //外层作用域无法获取内层作用域 fu

2020-11-23 16:48:53 2066 1

原创 箭头函数和普通函数的区别

普通函数和箭头函数的区别: 1.箭头函数没有prototype(原型),所以箭头函数本身没有this 2.箭头函数的this在定义的时候继承自外层第一个普通函数的this。 3.如果箭头函数外层没有普通函数,严格模式和非严格模式下它的this都会指向window(全局对象) 4.箭头函数本身的this指向不能改变,但可以修改它要继承的对象的this。 5.箭头函数的this指向全局,使用arguments会报未声明的错误。 6.箭头函数的this指向普通函数时,它的argumens继承于该普通函数 7.使用

2020-11-23 11:59:56 400 1

原创 解构赋值

ES6变量的解构赋值本质上是“模式匹配”,只要等号两边的模式相同,左边的变量就会被赋予匹配的右边的值,如果匹配不成功变量的值就等于undefined 1.解构 let obj={ name:"小张", age:78 } //左侧对象里的某个属性解构右侧的属性值,同事进行变量的声明 let { name,age,delete:del}={ name:"小张", age:78, delete:tr

2020-11-23 11:44:45 128

原创 let,const,var 的区别详解

var 1.var只有函数作用域,没有块作用域,可以声明全局/局部变量(在一共函数内声明的变量,只在该函数有效) 2.var定义的变量不能跨函数访问,但是可以跨块访问! 3.var 定义的变量如果不初始化会输出undefined,但不会报错 4.可以重复定义,后定义的会覆盖先定义的。 var aaa; console.log(aaa); //undefined //----------------------------------------- var a = 1; //全局变量 console.

2020-11-23 11:31:23 483 1

原创 扩展运算符

…运算符用于操作数组,有两种层面 1. 第一个叫做 展开运算符(spread operator),作用是和字面意思一样,就是把东西展开。可以用在数组(array)和对象(object)上都行。 let a = [1,2,3]; let b = [0, ...a, 4]; // [0,1,2,3,4] let obj = { a: 1, b: 2 }; let obj2 = { ...obj, c: 3 }; // { a:1, b:2, c:3 } let obj3 = { ...obj, a: 3

2020-11-23 11:02:41 387

原创 Github多人开发流程

GitHub 多人协作开发 三种方式: 一、Fork 方式 网上介绍比较多的方式(比较大型的开源项目,比如cocos2d-x) 开发者 fork 自己生成一个独立的分支,跟主分支完全独立,pull代码后,项目维护者可根据代码质量决定是否merge代码 此方式网上方法比较多,这里不详细描述 二、组织 组织的所有者可以针对不同的代码仓库建立不同访问权限的团队。 Accounts Settings => Organizations =>Create new Organizations 新建一个组织

2020-11-23 07:27:55 279

原创 Git以及GitHub的基础操作

git基础 1.git是什么? Git 是目前世界上最先进的分布式版本控制系统(没有之一) 2.git 的常用指令? git init // 初始化 git config --global user.name "Your Name" // 设置git 全局配置 用户名 git config --global user.email "email@example.com" // 设置git 全局配置 邮箱 git config --list // git 查看全局配置 g

2020-11-20 21:30:42 116

原创 Git教程

Git基础 1.什么是git? Git 是目前世界上最先进的分布式版本控制系统(没有之一), Linus 花了两周时间自己用 C 写了一个分布式版本控制系统,这就是 Git! 2.安装git 1.在 Windows 上安装 Git msysgit 是 Windows 版的 Git,从 http://msysgit.github.io/ 下载,然后按默认选项安装即可。 安装完成后,在开始菜单里找到“Git”->“Git Bash”,蹦出一个类似命令行窗口的东西,就说明 Git 安装成功! 安装完成后,还

2020-09-25 18:55:00 164

空空如也

空空如也

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

TA关注的人

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