3 Jake Zhang

尚未进行身份认证

简单的事情重复做,复杂的事情分步做

等级
TA的排名 20w+

js数组去重大全,推荐收藏

情境:将数组var arr = [1,1,‘true’,‘true’,true,true,15,15,false,false, undefined,undefined, null,null, NaN, NaN,‘NaN’, 0, 0, ‘a’, ‘a’,{},{}];中重复的值过滤掉1、 ES6-set使用ES6中的set是最简单的去重方法var arr = [1,1,'true','t...

2019-12-10 11:02:57

「前端料包」一文彻底搞懂JavaScript中的this、call、apply和bind

前言关于JavaScript中this又是一个老生常谈的话题,也是面试绕不开的经典考题。「前端料包」 系列第三篇就一起聊聊关于this的话题。写的很小白,如有不对,欢迎各路大佬指正~在讲this之前,先得说说环境 这个概念。一门语言在运行的时候,需要一个环境,叫做宿主环境。对于JavaScript,宿主环境最常见的是web浏览器,另一个最为常见的就是 Node 了,同样作为宿主环境,node ...

2019-12-02 20:16:30

「前端料包」一文吃透盒子模型BFC

前言接触写博客有一段时间了,都是边学边学着写,但总感觉写的凌乱,想起啥写啥。这几天在刷红宝书,收获还是蛮多的,决定结合自己的学习,写一个系列,我叫它 「前端料包」,旨在巩固前端基础,努力提升自己,同时也乐于做一个分享者。这个系列包括但不限于下面脑图中的内容,目录和发文顺序暂且如下图,今天带来的是第二篇。1、什么是BFC在讲BFC之前,先说一下文档流。我们常见的文档流有三种:浮动流、定位流和...

2019-11-18 10:07:33

【Git】405- 分享:大牛总结的 Git 使用技巧

作者:你喜欢吃青椒么来源:juejin.im/post/5d157bf3f265da1bcc1954e6前言本文是参考廖雪峰老师的Git资料再加上我自己对Git的理解,记录我的Git学习历程,作下此文是为以后学习,工作,开发中如果遇到问题可以回过头来参考参考。因为水平有限,难免会有出错的地方,欢迎指正。Git是什么官方话:Git是一个免费的开源分布式版本控制系统,旨在快速高效地处理从...

2019-11-14 11:10:49

「前端料包」可能是最透彻的JavaScript数据类型详解

前言接触写博客有一段时间了,都是边学边学着写,但总感觉写的凌乱,想起啥写啥。这几天在刷红宝书,收获还是蛮多的,决定结合自己的学习,写一个系列,我叫它**「** 前端料包 」,旨在巩固前端基础,努力提升自己,同时也乐于做一个分享者。这个系列包括但不限于下面脑图中的内容,目录和发文顺序暂且如下:概述在讲数据类型之前,想先讲讲变量。JavaScript的变量是松散型的,即可以保存任何类型的数据...

2019-10-31 14:46:37

Vue 出场率99%的面试题

1. 说一下 Vue 的双向绑定数据的原理vue 实现数据双向绑定主要是:采用数据劫持结合“发布者 - 订阅者”模式的方式,通过 Object.defineProperty() 来劫持各个属性的 setter、 getter,在数据变动时发布消息给订阅者,触发相应监听回调。2. 解释单向数据流和双向数据绑定单向数据流:顾名思义,数据流是单向的。数据流动方向可以跟踪,流动单一,追查问题的时候可...

2019-10-31 09:59:59

重新深入理解JavaScript原型和原型链

1. 前言关于JS原型和原型链我之前刚学js就有写过一篇文章,但前两天翻出来一看——什么鬼,这是我写的吗?自己都看不懂了,于是我重新整理思路,写下此篇。原型和原型链是js中的难点也是重点,有句话说,没理解透原型和原型链,就算还没有真正入门的前端。并且原型和原型链会是面试中必不可少的话题。看完这篇相信你能对原型和原型链会有个深刻的理解。2. 函数对象JS所有对象分为函数对象和普通对象。凡是通...

2019-10-16 13:01:07

jake跟你聊聊应届生找工作那点事儿

1.写在前面咳咳。。如果时间可以倒转,我一-定要和你一起过童年,我们捉迷藏,偷地瓜,下河摸鱼,斗蚂蚱,然后我揍你,你哭了,我就会哄你高兴,和你玩,然后再揍你。然后再。。。好了,预祝各位国庆节快乐!还是说说标题上的事儿,一年一度的金九银十的金色九月的尾巴已经划过指尖,各大高校招聘宣讲会也已经如火如荼进行了2~3周。但我相信也肯定也还有部分迷迷糊糊,不知道自己想从事什么行业,不知道自己能做什么,想...

2019-09-30 09:47:43

Node.js Error: Cannot find module express的解决办法

昨天开始做一个模仿京东移动商城的项目,启动node服务时遇到Error: Cannot find module express的报错,于是我就全局安装:npm install -g expressnpm install -g express-generator // express 4.x版本中将命令工具分出来,安装一个命令工具,此为执行命令安装完成后 输入express --versio...

2019-09-26 20:20:11

vue-devtools调试工具下载安装攻略

1、从github上下载(点我) vue-devtools,点击download,复制copy路径2、回到项目目录,右键打开git,输入命令clone+地址(刚才copy的地址)下载成功后3、输入命令cd vue-devtools 进入到vue-devtools目录中,安装cnpm install4、输入命令 npm run build 运行5、装完后,回到浏览器,找到更多工...

2019-09-24 23:55:10

Vue2.0搭建Vue脚手架(vue-cli)教程

随着vue.js越来越火爆,更多的项目都用到vue进行开发,在实际的开发项目中如何搭建开发脚手架呢,今天跟大家分享一下:首先需要了解的知识HtmlCssJavascriptNode.js 环境(npm包管理工具)Webpack 自动化构建工具一、安装node.js 进入官网下载node.js二、安装 cnpm1、说明:npm(node package manager)是nodej...

2019-08-25 22:40:42

前端面试——JavaScript篇(持续更新~)

此题库收录前端面试中JavaScript部分常见的面试题及参考答案,出题顺序将按照js学习顺序由浅入深,持续更新~~

2019-08-25 11:49:00

JS高级进阶——递归

递归: 函数在运行过程中自己调用自己递归算法的基本思想是:把规模大的、较难解决的问题变成规模较小的、易解决的同一问题。规模较小的问题又变成规模更小的问题,并且小到一定程度可以直接得出它的解,从而得到原来问题的解。看一个典型的求阶乘的栗子: function fun(n) { if (n<=1) { return 1; }else {...

2019-08-24 23:19:20

99.999%的程序猿都不知道的js、html 、css的冷僻小知识

1、body对浏览器的默认margin是多少像素8px2、css权重是什么进制哈哈,想不到吧 256进制css选择器权重由小到大分别是:0–>1–>10–>100–>1000–>Infinity。分别对应:通配符 --> 标签|伪元素–> class|属性|伪类 --> 行内 --> !important...

2019-08-23 21:46:05

从输入url到页面完成加载发生了什么(完结)

在写这篇文章之前本想着这个知识点涉及知识点太多太杂,我自己又是一个计算机网络小白找一篇大牛写的看看就算了,但是看了大概七八篇后,内心更纠结了——

2019-08-15 15:47:41

浅谈Ajax

1.什么是Ajaxajax 的全称是Asynchronous(异步) JavaScript and XML 。是一种在不刷新页面的情况下从服务器获取,提交数据的一种数据交互方式;**注意:**ajax本身不支持跨域请求,需要在服务器端处理。2.原理及使用步骤//1:创建Ajax对象var xhr = window.XMLHttpRequest?new XMLHttpRequest():...

2019-08-11 13:05:18

前端基础——JS运行机制

先看两个例子console.log(1);setTimeout(function(){console.log(2);},1000);console.log(3);// 输出顺序为1 3 2,没毛病(大部分人的第一反应)//////console.log(1);setTimeout(function(){console.log(2);},0);console.log(3);//...

2019-08-10 11:51:40

前端基础——浏览器渲染机制

1、DOCTYPE概念及作用DOCTYPE是用来声明文档类型和DTD规范的,一个主要的用途便是文件的合法性验证。如果文件代码不合法,那么浏览器解析时便会出一些差错。DTD (document type definition,文档类型定义)是一系列的语法规则,用来定 义XML或(X)HTML的文件类型。浏览器会使用它来判断文档类型,决定使用何种协议来解析,以及切换浏览器模式。常见的DOCTY...

2019-08-09 10:38:45

vue学习笔记(更新~)

目录及知识点如下脑图1. vue简介vue是一个构建用户界面的框架。是一个轻量级mvv框架,通过简单的api实现响应式的数据绑定和组合视图组件,容易上手,小巧。(1)主要特点(2)优势(3) 核心思想2.安装vue-devtools安装vue-devtools插件,便于在chrome中调试vue,配置是否允许vue-devtools检查代码,方便调试,生产环境设置为false...

2019-08-08 15:39:02

前端基础——BFC盒模型

我们都知道CSS盒子模型有两个,w3c标准盒模型和IE盒模型,两者的区别在于计算盒子尺寸的规范不同,可通过box-sizing来设置两种盒子模型(可看看我的这篇box-sizing详解——>点我

2019-08-08 10:35:19

查看更多

勋章 我的勋章
  • GitHub
    GitHub
    绑定GitHub第三方账户获取
  • 新人勋章
    新人勋章
    用户发布第一条blink获赞超过3个即可获得
  • 阅读者勋章Lv1
    阅读者勋章Lv1
    授予在CSDN APP累计阅读博文达到3天的你,是你的坚持与努力,使你超越了昨天的自己。
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。