自定义博客皮肤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)
  • 收藏
  • 关注

原创 url问题

本文主要总结关于JavaScript的url相关问题。url编码编码方式主要有两种:encodeURI(),对应的解码方法为decodeURI()encodeURIComponent(),对应的解码方法为decodeURIComponent()两者的区别:encodeURI()方法主要用于对整个URL进行编码。除了常见符号外,它对网址中的特殊符号,如“;/?:@&=+$,#”等,不进行编码

2017-08-29 14:27:41 441

原创 DOM常见操作

查找DOM节点getElementById()getElementsByTagName()getElementsByName()getElementsByClassName()querySelector()querySelectorAll()前四种需要对应的参数,后两种可以使用任意CSS选择器作为参数。前四种和后两种的主要区别:返回的对象不同举例说明: 假设HTML代码如下:<u

2017-08-28 18:01:02 393

原创 js字符串方法总结

字符串的长度使用length属性可以查看字符串的长度转化为字符串toString()使用对象,数值,布尔值和字符串值都有该方法。但是null,undefined方法没有let test1 = [1,2,4];console.log(test1.toString()); // 1,2,4let test2 = 3.3;console.log(test2.toString()); // 3.3let

2017-08-28 12:14:30 384

原创 js数组去重

本文主要总结只考虑数组中元素为数字或字符串,返回一个去重后的数组的去重方法。基本方法主要思想:创建一个新数组,首先遍历原数组,若原数组某个元素不在新数组中,则添加到新数组;若存在,则忽略。function uniqeArray(arr){ let res = [arr[0]]; for(let i = 0; i< arr.length; i++){ let repea

2017-08-28 10:52:45 249

原创 js数组基本方法总结

先定义一个数组:var a = ["a","b","c"];数组检测instanceofconsole.log(a instanceof Array); // true只有一个全局作用域下,使用这种方法。若网页中包含多个框架,容易出错。Array.isArray()console.log(Array.isArray(a)); // true不管有几个全局环境,都可以,但是兼容性不高。Obj

2017-08-24 15:44:19 275

原创 js作用域总结

全局作用域函数作用域catch,with延长作用域链ES6中let和const的块级作用域

2017-08-24 11:27:56 191

原创 arguments,callee和caller

arguments每个函数都会有Arguments对象实例arguments,它包含传入函数的实参。arguments类型是对象,但是也是个类数组。它可以使用数组的length来看参数的数量,但是不能使用数组的方法,如pop等。将它转换为数组: Array.prototype.slice.call(arguments)。常见的类数组主要是arguments和获取的DOM元素(datalis

2017-08-24 10:51:32 291

原创 js深拷贝浅拷贝

对数据进行备份是一个常见的问题。那么什么是深拷贝浅拷贝呢? 我们都知道js的数据类型有值类型和引用类型。值类型:通过赋值即可实现数据备份引用类型:由于变量中保存的只是指向数据值的指针,因而若简单复制变量,那么若改变变量,原对象也会跟着改变,这就是浅拷贝。所以深拷贝指的自然就是另外开辟一块内存保存对象的值,这样即使改变了拷贝后的数据,原数据也不会改变。浅拷贝普通赋值function clone

2017-08-23 16:46:21 485

原创 js继承方法的总结

js中的继承主要是依靠原型链来实现的。下面我们来分析一下继承的方式还有其优缺点。原型链继承首先介绍一下原型链的基本概念。 先来理解一下原型、构造函数和实例的关系。每个构造函数都有一个原型对象(通过prototype属性)原型对象都包含一个指向构造函数的指针(通过constructor属性)实例都包含一个指向原型对象的内部指针(通过隐式proto属性)那么,若原型对象等于另一个原型的实例,则

2017-08-22 17:56:16 602

原创 js中new一个对象会发生什么

js中可以使用new构造函数的方法创建一个新对象,使用这种方式调用构造函数实际上会经历以下步骤: 1、创建一个新对象 2、将构造函数的作用于赋给新对象(this) 3、执行构造函数中的代码(为新对象添加属性) 4、返回该对象。 因此对于一个构造函数即使它的内部语句最后并没有return,也会默认有return this;语句。

2017-08-22 15:54:02 4153

原创 javascript中this使用场景的总结

首先需要明确的是函数中写的this只有在调用的时候,我们才能确定它的值是怎样的。因为函数调用时会生成一个新的执行上下文环境。全局 & 调用普通函数在全局作用域下,调用普通函数,其this指向window。var n = 'hello world !';   function example(){      this.n = 0;    }  console.log(n); // 0 !

2017-08-22 13:35:01 347 1

转载 跨域问题

自己收藏的 跨域问题详解

2017-08-20 23:00:26 176

原创 事件处理程序的几种方式总结

本文主要总结一下关于事件处理的几种方式。HTML事件处理程序这种方式即写在HTML代码中的,如<input type="button" value="click" onclick="alert('Clicked')">点击该按钮就会弹出相应的对话框。 这种方式是将onclick作为元素属性,将执行的代码作为属性值来表达。但是这样的写法需要注意,为了避免解析不正确,需要使用经过转移的HTML语法字符

2017-08-20 14:28:15 2748

原创 HTTP状态码

本文主要讲解HTTP常见的状态码。 HTTP状态码负责表示客户端HTTP请求的返回结果、标记服务器端的处理是否正常、通知出现的错误等工作。状态码的类别状态码主要有五类:1XX接受的请求正在处理2XX请求正常处理完毕3XX需要进行附加操作以完成请求4XX客户端错误,服务器无法处理请求5XX服务器处理请求错误常见的状态码200:表示客户端发来的请求在服务端被正常处理 204:服务端接收的请求已成功

2017-08-18 22:00:56 263

原创 Ajax原生实现及相关知识讲解

最近在系统的学习JavaScript基础知识,本文讲解一下关于ajax的实现。 首先上一个原生实现的代码:// 创建兼容主要浏览器的XHR对象的方法function createXHR(){ if(typeof XMLHttpRequest != "undefined"){ return new XMLHttpRequest(); }else if(typeof Acti

2017-08-18 19:17:01 221

原创 css水平垂直居中

再次总结一下css水平垂直居中问题在css中,进行水平居中非常简单:若是行内元素,就对其父元素设置text-align: center;若是块级元素,自身设置margin:auto;即可。垂直居中比较复杂。下面详细叙述几种常见的比较好的用法,对于过去的比较老的用法不再总结。绝对定位的方法其基本原理是把元素的正中心放到视口的正中心。 看下面的例子:main { position: abs

2017-08-18 16:24:58 249

空空如也

空空如也

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

TA关注的人

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