- 博客(28)
- 收藏
- 关注
原创 scope 和异步执行
1. let 定义在外面function countdown(){ let i; for(i=5;i>=0;i--){ setTimeout(function(){ console.log(i); },(5-i)*1000); }}countdown(); // 6个-12. let 定义在里边function countdown(){ for(let i=5;i>=0;i--){
2020-07-30 20:57:42 169
原创 web 前端开发工程师,面试题详解(二)
1、浅拷贝和深拷贝浅拷贝:浅拷贝只是拷贝一层,更深层次级别的只拷贝引用(或者说地址)。es6中应用浅拷贝的是Object.assign(target,source1,souce2),浅拷贝改变深层次的属性值,原对象也会改变;深拷贝:深拷贝拷贝多层,每一级别的数据都会拷贝;深拷贝改变深层次的属性值,原对象不会改变;var obj = { id:'1', name:'andy', msg:{ age:18 }, color:['pink','
2020-07-25 20:04:12 175
原创 对象数组去重
// 对象数组去重let obj = [{ id: '1', name: '张三', age: '20'}, { id: '2', name: '李四', age: '22'}, { id: '1', name: '张三', age: '20'}, ];let object = {};let objNew = obj.reduce((init, curVal, curIndex) => { object[curVal.id] ? "" : obj.
2020-07-02 16:32:04 185
原创 深度比较两个对象和两个数组
深度比较两个对象:function compare(origin, target) { if (typeof target === 'object') { if (typeof origin !== 'object') return false; // 继续去递归调用 for (const key of Object.keys(target)) { if (!compare(origin[key], target[key])) { return
2020-06-29 18:29:42 190
原创 回调函数的介绍
回调函数回调函数就是一个通过函数指针调用的函数。如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用来调用其所指向的函数时,我们就说这是回调函数。回调函数不是由该函数的实现方直接调用,而是在特定的事件或条件发生时由另外的一方调用的,用于对该事件或条件进行响应。回调方法 是 任何一个 被 以该回调方法为其第一个参数 的 其它方法 调用 的方法。很多时候,回调是一个当某些事件发生时被调用的方法。...
2020-06-29 17:39:22 128
原创 Async/Await的使用
Async/Await简介async/await是写异步代码的新方式,以前的方法有回调函数和Promise。 async/await是基于Promise实现的,它不能用于普通的回调函数。 async/await与Promise一样,是非阻塞的。 async/await使得异步代码看起来像同步代码,这正是它的魔力所在。使用Promise是这样的:const makeRequest = () => getJSON() .then(data => { cons
2020-06-29 17:25:14 178
原创 web 前端开发工程师,面试题详解
1、数组循环中key的作用:一般使用id作为key值,vue和react的虚拟DOM的Diff算法大致相同,key的作用主要是为了高效的更新虚拟DOM,只要新渲染改变的数据就可以了,其他都是就复用之前的。2、在浏览器中输入URL后,执行的全部过程:域名解析发起TCP的3次握手建立TCP连接后发起http请求服务器响应http请求浏览器解析html代码,并请求html代码中的资源(如js、css、图片等)断开TCP连接浏览器对页面进行渲染呈现给用户TCP:传输控制协议(TCP)是一种网络通
2020-06-19 18:05:01 193
原创 查找字符串中出现次数最多的字符
lets='ABCDAAAA';varobj={};for(vari=0;i<s.length;i++){if(!obj[s.charAt(i)]){obj[s.charAt(i)]=1}else{obj[s.charAt(i)]++}}varmax=0;varname='';for(varjofObject.keys(obj)){if(obj[j]...
2020-06-19 18:02:29 126
原创 如何在Github上面传输代码
第一步:注册Github账号打开浏览器,在地址栏输入https://github.com。第二步:新建一个仓库选择 New repository第三步:将你需要上传的项目用 git bash打开右键点击文件选择Git Bash Here 选项第四步:在gitbash里面输入:git init第五步:在gitbash里面输入:git add .第六步:在gitbash里面输入:git commit -m "文件说明"//文件说明,双引号中的内容是备注,注意:...
2020-06-09 11:01:52 250
原创 Git bash Unknown SSL protocol error in connection to github.com:443
输入命令 git config http.sslVerify "false"
2020-01-14 17:55:15 277
原创 如何创建react tsx后缀的项目
npm install -g create-react-appnpx create-react-app react-antd --typescript
2019-12-10 15:35:29 2219
原创 axios使用拦截器统一处理所有的http请求
Axios 是一个基于 promise 的 HTTP 库,可以用在浏览器和 node.js 中。很多情况我们要对请求和其响应进行特定的处理;如果请求数非常多,单独对每一个请求进行处理会变得非常麻烦。好在强大的axios为开发者提供了这样一个API:拦截器。拦截器分为 请求(request)拦截器和 响应(response)拦截器。http request拦截器// 添加请求拦截器a...
2019-12-05 16:58:49 664
原创 express的简单使用
constexpress=require("express");constbodyParser=require("body-parser");constapp=express();app.use(bodyParser.urlencoded({extended:false}));app.use(bodyParser.json());app....
2019-12-04 09:48:43 111
原创 jsonp实现跨域请求
fetch-jsonp是github上的开源项目,使用简单:安装 :npm install fetch-jsonp ;引用 :import fetchJsonp from 'fetch-jsonp';详细链接:fetch-jsonp本篇文章要说明的是一款跨域数据请求的库文件fetch-jsonp,这是一款github上开源文件,基于ES6下的Promise设计实现,可以在某些情况下...
2019-11-29 14:26:33 199
原创 new Set字符串数组去重,es6方法
var arr = [5,6,6,7,8];var set = new Set(arr) // {5,6,7,8}var newArr = Array.from(set) // 再把set转变成arrayconsole.log(newArr) // [5,6,7,8]
2019-07-23 14:43:29 822
转载 tsconfig.json
{ "compileOnSave": false, "compilerOptions": { // 允许编译javascript文件。 "allowJs": true, // 允许从没有设置默认导出的模块中默认导入。这并不影响代码的显示,仅为了类型检查。 "allowSyntheticDefaultImports": true, // 不报告执行不到...
2019-07-03 10:01:47 360
原创 git中提示说有正在运行的进程,无法进行无法提交和撤销
git工具中问题展示: 出现的问题为:fatal: Unable to create 'D:/project/.git/index.lock': File exists 解决办法: 进入.git目录删除index.lock文件,删除后再commit会自动再次生成index.lock。...
2019-07-03 09:21:14 677
原创 将axios全局挂载到VUE原型上
安装axios:yarn add axios 在main.js文件引入axios:import axios from 'axios' 将axios全局挂载到VUE原型上:在main.js中添加,Vue.prototype.$axios=axios 使用:this.$axios.get('/url',{params:{username:'张三'}})...
2019-07-02 16:51:41 8271
原创 vue中引入文件的@的意思
import HelloWorld from '@/components/HelloWorld'导入新组件( @ 代表 src下的目录,简化地址路径)
2019-06-27 18:38:46 3507 1
原创 React.Fragment组件
在 Vue 中,用<template></template>标签来包裹一些不能有父容器的复数同级标签。在React中,用React.Fragment组件能够在不额外创建 DOM 元素的情况下,让render()方法中返回多个元素。你也可以使用其简写语法<></>。render() { return ( <Rea...
2019-06-27 18:25:43 591 2
原创 vue 新建一个项目
1、安装node.js;2、安装vue-cli脚手架构建工具,输入命令npm install -g vue-cli;3、创建项目:vue init webpack +项目名称;4、进入到项目的文件夹下,运行项目,指令npm run dev;...
2019-06-27 18:17:09 108
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人