自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 解决git上传文件出错[rejected] master -> master (fetch first) error: failed to push some refs to ‘ —————————

当执行到push时,就会报错,报错代码如下:$ git push -u origin masterTo gitee.com:backspacegit/aafdajs.git ! [rejected] master -> master (fetch first)error: failed to push some refs to 'gitee.com:backspacegit/aafdajs.git'hint: Updates were rejected because the

2021-06-12 14:55:00 765

原创 JS-原型与原型链

prototype是函数的原型对象,即prototype是一个对象,它会被对应的__proto__引用。 要知道自己的__proto__引用了哪个prototype,只需要看看是哪个构造函数构造了你,那你的__proto__就是那个构造函数的prototype。 所有的构造函数的原型链最后都会引用Object构造函数的原型,即可以理解Object构造函数的原型是所有原型链的最底层,即Object.prototype.__proto===null1Object.__proto__...

2021-05-18 19:03:49 100

原创 call与apply,bind手写及其区别

1.在js中call/apply,还有比较少用的bind;传入的第一个参数都是改变函数当前上下文对象;call/apply区别在于传的参数不同,一个是以逗号分隔字符串,一个以数组形式。而bind和call几乎没差别只是将值返回。可是当我们将null/undefined作为值传进去的时候呢?居然得到的是window,当前js运行环境的全局对象。这其实在es5中就有解释的:传入null/undefined的时候将执行js全局对象浏览器中是window,其他环境是global。这样就解释得通了...

2021-05-18 18:37:50 78

原创 JS-面试题-请问可以手写一个new()吗

第一种方法// 模拟 new function myNew (constructor, ...args) { // 步骤1:创建新的对象 let targe = {} // 步骤2:将该对象的 __proto__ 与构造函数的 prototype 进行挂钩。 targe.__proto__ = constructor.prototype // 步骤3:将该对象作为构造函数的上下文,执行构造函数,并拿到构造函数的返回值。 const Res = constructor.apply(targe

2021-04-23 21:42:22 151

原创 JS-微任务与宏任务面试题练习

微任务与宏任务面试题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

2021-04-15 11:26:23 456 1

原创 JS-原型与原型链常见面试题

原型与原型链的常见面试题1.var A=function(){}A.prototype.n=1var b=new A()A.prototype={n:2,m:3}var c=new A()console.log(b.n,b.m,c.n,c.m)//1,undefined,2,3分析一下:b.n 因为b是A的实例所以指向A的原型对象,有一句话:对象实例的隐式原型指向构造函数的显示原型2.var F=function(){};Object.prototype.a=f

2021-04-11 09:41:52 1963

原创 JS-高级内容-04三者之间的关系

三者之间的关系内存是一个容器,用来存储程序运行需要操作的数据(内存是用来存储数据的空间)。变量是内存的标识,我们通过变量找到对应的内存,进而操作(读/写)内存中的数据。情况讨论:var a = xxx(赋值操作),a内存中到底保存的是什么 首先将代码加载到内存中 然后编译 再然后解析执行 内存内容有两种数据 一种是基本数据 一种是地址值数据 var a = 3 var b = a 变量赋值是将a的值复制一份给b 对象是将地址给变

2021-04-10 13:09:24 108 1

原创 JS-高级内容-03数据 变量 内存

数据 变量 内存1.什么是数据存储于内存中代表特定信息的'东西',本质就是0101(二进制)...数据的特点:具有可读、可传递、可运算的基本特性。一个数据类型可以进行运算是固定的万物(一切)皆数据,函数也是数据。内存(程序)中所有操作的目标: 数据 * 算术运算 * 逻辑运算 * 赋值 * 运行函数(调用函数传参)2.什么是内存内存条通电后产生的可存储数据的空间(临时的)。内存产生和死亡: 内存条(集成电路板)==>通电==>产生一定容量的存储(内存)空间==>

2021-04-10 13:02:56 70

原创 JS-高级内容-02据类型相关问题

数据类型相关问题什么是实例//实例:实例对象//类型:类型对象 function Person (name,age) {//构造函数 类型、 this.name = name, this.age = age } var p = new Person('tom',12)//根据类型创建的实例对象 //Person('jack',15)1.undefined 与null的区别undef

2021-04-10 12:58:38 56

原创 JS-高级内容-01数据类型分类

数据类型分类基本数据类型Number:任意数值String:任意文本Boolean:true / falseundefined:undefinednull:null对象(引用)类型Object:任意对象([]、函数...)Array:特别的对象类型(数值下标 / 内部数据有序)Function:特别的对象类型(可执行)数据类型判断typeof返回数据类型的字符串表达可以区别:数值、字符串、布尔值、undefined、function不能区别:null与object、一般ob

2021-04-10 12:54:41 59

原创 JS-原型与原型链面试题

function A() { } A.prototype.n = 1 var b = new A() A.prototype = { n: 2, m: 3 } // A的原型对象被改变了,但是b的原型对象可没变 var c = new A() console.log(b.n, b.m, c.n, c.m) //1 underfined ...

2021-04-08 17:17:01 260

原创 JS声明函数的三种方式

1、函数关键字functionfunction myFunction(x){ alert(x) }2、函数字面量var myFunction = function(x) { alert(x) } 3、Function构造函数var myFunction = new Function( 'x' , ' alert(x) ') //由Function构造的函数参数可变,最后一个参数为函数体...

2021-04-07 20:23:32 95

原创 JavaScript-总结

引入方式1.外部引入 引入一个独立的js文件<script type="text/javascript" src="路径/文件名.js"></script>2.内部引入(内嵌) 在head或者body标签内定义script标签,然后在script标签内书写js代码<script type="text/javascript">js代码</script>3.行内引入 在标签内结合事件来使用<input type="button" value=

2021-03-25 21:22:51 104 2

原创 JavaScript-slice() 方法与splice() 方法

slice() 方法格式:slice() 方法可从已有的数组中返回选定的元素 该方法并不会修改数组,而是返回一个子数组arrayObject.slice(start,end)start 必需 规定从何处开始选取(不包含起始位置)。如果是负数,那么它规定从数组尾部开始算起的位置。也就是说,-1 指最后一个元素,-2 指倒数第二个元素,以此类推end可选 规定从何处结束选取。该参数是数组片断结束处的数组下标。如果没有指定该参数,那么切分的数组包含从 start 到数组结束的所有元素。如果这个参

2021-03-25 09:55:08 63

原创 JavaScript-数组方法总结

数组方法1.unshift() 方法格式:unshift() 方法可向数组的开头添加一个或更多元素,并返回新的长度修改原来的数组,不创建新的数组arrayObject.unshift(newelement1,newelement2,…)var arr=[1,2,3,4];arr.unshift("李四");console.log(arr); //["李四", 1, 2, 3, 4]2.shift() 方法格式:shift() 方法用于把数组的第一个元素从其中删除,并返回删除的值va

2021-03-25 09:19:03 61

原创 JavaScript-变量提升、预编译

1.变量提升console.log(a); //undefined a未被定义var a="111";console.log(a); //111function fn () {  console.log(a); // undefined  var a = '222';  console.log(a); // 222} 2.函数提升fn(1,2) //3function b(x,y) { return x + y}fn(1,2) //3fn2(1,2

2021-03-25 08:28:01 81 1

空空如也

空空如也

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

TA关注的人

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