自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

翻译 JS数组reduce()方法详解及高级技巧

什么是reduce() 如何使用reduce() 看完这篇文章你将能熟练地使用reduce()装逼!!!1、语法 arr.reduce(callback,[initialValue])reduce 为数组中的每一个元素依次执行回调函数,不包括数组中被删除或从未被赋值的元素,接受四个参数:初始值(或者上一次回调函数的返回值),当前元素值,当前索引,调用 reduce 的数组。 ...

2019-04-11 13:48:40 149

翻译 javascript高阶函数map、reduce、sort、filter

JavaScript的函数其实都指向某个变量。既然变量可以指向函数,函数的参数能接收变量,那么一个函数就可以接收另一个函数作为参数,这种函数就称之为高阶函数。一个最简单的高阶函数:function add(x, y, f) { return f(x) + f(y);}map这个区别于Map,map是Array的一个方法。举例说明,比如我们有一个函数f(x)=x2,要把这个函数...

2019-04-09 20:09:36 167

原创 浅谈fetch

Why Fetch在开发过程中,我们向服务端发送请求,一般会使用三种方式, XMLHttpRequest(XHR),Fetch ,jQuery实现的AJAX。其中, XMLHttpRequest(XHR)和Fetch是浏览器的原生API,jquery的ajax其实是封装了XHR。Fetch 的出现就是为了解决 XHR 的问题,拿例子说明:使用 XHR 发送一个 json 请求一般是这样:...

2019-03-20 20:33:07 238

原创 深入了解ES6中的set和map

Set基本用法ES6 提供了新的数据结构 Set。它类似于数组,但是成员的值都是唯一的,没有重复的值。Set 本身是一个构造函数,用来生成 Set 数据结构。const s = new Set();[2, 3, 5, 4, 5, 2, 2].forEach(x => s.add(x));for (let i of s) { console.log(i);}// 2 3 5 ...

2019-03-15 20:32:46 217 1

原创 ES6中的let命令和const命令

let 命令基本用法ES6 新增了let命令,用来声明变量。它的用法类似于var,但是所声明的变量,只在let命令所在的代码块内有效。for循环的计数器,就很合适使用let命令。另外,for循环还有一个特别之处,就是设置循环变量的那部分是一个父作用域,而循环体内部是一个单独的子作用域。不存在变量提升var命令会发生”变量提升“现象,即变量可以在声明之前使用,值为undefined。这种...

2019-03-15 19:08:40 119

原创 jsonp实现原理

什么是jsonpjsonp是解决跨域的一种方法浏览器有一种约定叫同源策略,为了保证用户访问的安全,现代浏览器使用了同源策略,即不允许访问非同源的页面,但是有三个标签是允许跨域加载资源 <img src=xxx> <link href=xxx> <script src=xxx>jsonp原理就是利用上述script标签没有跨域限制...

2019-03-13 20:52:16 168

原创 jQuery对象与原生DOM对象之间的转换

jQuery对象与原生DOM对象是两种不同的对象,两者不能混淆使用。DOM对象才能使用DOM方法,jQuery对象才能使用jQuery方法,jQuery对象转成DOM对象: 方法一: 可以通过[index]方法获得相应的DOM对象。 var o=$('.box')[0] 方法二 :jQuery本身可以通过.get(index)方法得到相应的DOM对象 var a=$('....

2019-03-06 20:25:17 3329 2

原创 querySelectorAll与原生js getElementsByTagName的区别

我们都知道两种方法都是用来找查找元素的,但两者有着细微的差异: 通过querySelectorAll得到的集合是静态的 而是用getElementsByClassName得到的是动态的集合,也 就是说每一次调用都会去对dom节点进行一次查询。querySelectorAll()和getElementsByTagName()两个方法都是用来从DOM树中获取元素集合。如果简单的理...

2019-03-02 15:43:13 306

原创 H5中的web存储

早期的的存储通常使用cookie存储在用户的客户端,并随浏览器的请求一起发送到服务器的,它有一定的过期时间,过期后自动消失,也制约其发展的因素。1.HTML5的Web存储功能是让网页在用户计算机上保存一些信息。Web存储又分为两种:(1)本地存储,对应 localStorage 对象。用于长期保存网站的数据,并且站内任何页面都可以访问该数据。(2)会话存储,对应 sessionStorage...

2019-02-27 21:26:21 431

原创 js面向对象之封装

面向对象有三大特性,封装、继承和多态。对于ES5来说,没有class的概念,并且由于js的函数级作用域(在函数内部的变量在函数外访问不到),所以我们就可以模拟 class的概念,在es5中,类其实就是保存了一个函数的变量,这个函数有自己的属性和方法。 封装:把客观事物封装成抽象的类,隐藏属性和方法的实现细节,仅对外公开接口。构造函数javascript提供了一个构造函数(Cons...

2019-02-21 20:40:19 185

翻译 js面向过程编程与面向对象编程的区别

面向对象是把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为。面向对象和面向过程的区别 面向对象和面向过程是两种不同的编程思想, 其实面向对象和面向过程并不是完全相对的,也并不是完全独立的。 面向对象和面向过程的主要区别是面向过程主要是以动词为主,解决问题的方式是按照顺序一步一步调用不同的函数。 而面向对象主要是...

2019-02-21 20:02:29 2213 1

原创 js实现全选 全不选 反选的功能

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Document</title></head><body> <h1>请

2019-02-21 19:05:54 1999

原创 js事件之UI事件

UI事件UI事件是那些不一定与用户操作有关的事件。这些事件在DOM规范出现之前,都是以这种或那种形式存在的。而在DOM规范中保留是为了向后兼容。现有的UI的事件如下:1. load 完全加载后触发(页面window/body、框架、图像img、嵌入的内容script)!!可以在body上执行onload的原因:在window上面发生的任何事件都可以在body元素中通过相应特性来指定,因...

2019-02-19 20:51:30 533

原创 js数组的深入浅出

数组内置方法: var arr=[10,20,30,40]; (1)栈方法(先进后出) 修改了原数组 push(item....item) 在数组末尾添加元素 pop 删除数组末尾元素 arr.push(50,60); arr.pop(); console.log(...

2019-02-16 11:02:00 118

原创 js数组的入门

Array 对象Array 对象用于在单个的变量中存储多个值。 数组定义: 1) new Array() 2) new Array(item,item,item...); 定义同时即初始化 3) new Array(length) 定义指定长度的数组 4) [] 定义一个空数组 ...

2019-02-16 09:35:37 118

原创 js节点属性(获取,设置)

节点属性的获取有三种方法 1. 对象.属性名 2. 对象[属性名] 3. obj.getAttribute(pro) <img src="images/1.jpg" alt="" id="pic" class="one"> <script type="text/javascript"> var txt=docum

2019-01-25 20:06:10 5802

原创 js DOM节点操作:增删改查复制

DOM 是 W3C(万维网联盟)的标准。DOM 定义了访问 HTML 和 XML 文档的标准:“W3C 文档对象模型 (DOM) 是中立于平台和语言的接口,它允许程序和脚本动态地访问和更新文档的内容、结构和样式。”DOM 是 Document Object Model(文档对象模型)的缩写。 节点:根据 W3C 的 HTML DOM 标准,HTML 文档中的所有内容都是节点: ...

2019-01-22 18:41:39 2592 1

原创 JavaScript 字符串(String)对象

String 对象String 对象用于处理文本(字符串)。对象包括属性和方法 String对象 1.属性: length 字符串中字符的个数 2.索引: 从0开始 取出字符串中的字符 str[索引] 3.遍历 for 注意: 1.字符串中每一个字符均为string类型 2.字符串本身不能被修改 ...

2019-01-19 14:29:11 116

原创 深入了解js变量的作用域

根据作用域不同,将变量分为以下两类: (1)全局变量 1.变量定义时未使用var关键字 2.在函数外部定义的变量 (2)局部变量 **1.在函数内部定义的变量(包含参数位置)普通的全局变量** var i=10; function a() { alert(i); }; a(); //结果为10普通的...

2019-01-19 10:07:08 110

原创 js函数基础到入门

1.函数: 函数就是一种封装2.定义函数:function 函数名(){函数体;}3.函数不会自动执行,需要被调用才可以执行函数名();4.函数命名规则:与变量命名规则一致1)以字母、、开头2)可以包含数字、字母、、_开头 2)可以包含数字、字母、、开​头2)可以包含数字、字母、、_3)区分大小写4)不能使用关键字和保留字驼峰命名法:若名称由多个单词组成,则从第二...

2019-01-14 20:47:16 177

转载 js隐式类型转换面试陷阱

· 1.1 隐式转换介绍· 1.2 隐式转换规则· 1.3 坑一:字符串连接符与算术运算符隐式转换规则混淆· 1.4 坑二:关系运算符:会把其他数据类型转换成number之后再比较关系· 1.5 坑三:复杂数据类型在隐式转换时会先转成String,然后再转成Number运算· 1.6-坑四:逻辑非隐式转换与关系运算符隐式转换搞混淆1.1-隐式转换介绍· 在js中,当运算符在运算时,如...

2019-01-11 20:47:23 176 1

原创 js数据类型转换

数据类型分为两种:基本数据类型和引用数据类型String 字符串Number 数值Boolean 布尔值Null 空值Undefined 未定义属于基本数据类型 数据类型转化是指将一种数据类型强行转换成其他类型; 类型转换主要指,将其他数据类型转换为:String Number Boolean(1)number,boolean—>string 方法一: 采用拼...

2019-01-11 20:08:09 100

原创 js 循环结构

循环结构:for while do…whilefor循环语法结构:for(循环条件初始化;循环条件判断;循环迭代){循环体;} 执行规则: 第一步:循环条件的初始化 var i=0; 只在最开始执行一次 第二步:循环条件判断 i<5; 若判断条件结果为真:则执行循环体 若不成立: ...

2019-01-09 19:14:14 181

原创 js分支结构

分支结构:if…else if…else if… switch注意:分支语句只会执行一个分支if…else if(条件判断){ 代码块1; }else{ 代码块2; }// 月考,根据成绩输出结果,若成绩大于80分,则考试通过,否则,留级 var score=prompt('请输入成绩:'); if(score>80){ document...

2019-01-09 18:50:27 440

转载 如何用js设计时间倒计时

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Document</title

2019-01-07 20:25:27 568

原创 js运算符

运算符:运算符根据操作数的个数可以分为:一元(一目)运算符、二元运算符、三元运算符根据运算符的作用:(1)算术运算符:+ - * / %(取余)一元运算符:自增:++自减:–注意:未赋值时,前置和后置 无区别 赋值时: 1.后置:先赋值,后运算 2.前置:先运算,后赋值 注意:+ 两边有一个为字符串类型时,则执行拼接操作,结果为字符串类型 var a...

2019-01-07 19:30:24 117 1

空空如也

空空如也

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

TA关注的人

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