update: 目录调整

This commit is contained in:
qianguyihao
2021-04-10 11:03:41 +08:00
parent 3dfab4a196
commit 1055343951
76 changed files with 214 additions and 76 deletions

View File

@@ -0,0 +1,111 @@
> 本文的最新内容更新于**2019-12-01**大家完全不用担心这篇文章会过时因为随着 前端技术的更新本文也会随之更新
> 本文的最新内容也会在[GitHub](https://github.com/qianguyihao/Web)上实时更新。欢迎在GitHub上关注我一起入门和进阶前端。
我之前写过一篇文章[裸辞两个月海投一个月从Android转战Web前端的求职之路](http://www.cnblogs.com/smyhvae/p/8732781.html)。这篇文章讲述了我在转型过程中的亲身经历和感受,不少童鞋私信问我怎么入门前端,于是有了这篇文章。
## Web前端入门的自学路线
> 新手入门前端需要学习的**基础内容**有很多如下
HTMLCSS基础JavaScript语法基础学完基础后可以仿照电商网站例如京东小米做首页的布局
JavaScript语法进阶包括作用域和闭包this和对象原型等相信我JS语法永远是面试中最重要的部分
jQueryAjax等jQuery没有过时它仍然是前端基础的一部分
ES6语法这部分属于JS新增的语法面试必问其中关于 promiseasync 等内容要尤其关注
HTML5和CSS3要熟悉其中的新特性
canvas面试时有的公司不一定会问canvas靠运气如果时间不够这部分的内容可以先不学但如果你会绝对属于加分项
移动Web开发Bootstrap等要注意移动开发中的适配和兼容性问题
前端框架Vue.js和React这两个框架至少要会一个入门时建议先学Vue.js上手相对容易但无论如何同时掌握 Vue React 才是合格的前端同学
Node.js属于加分项如果时间不够可以先不学但至少要知道 node 环境的配置
前端工程化构建工具 Webpack构建工具 gulpCSS 预处理器 Sass 注意Sass Less 用得多gulp grunt 用得多
十一前端综合HTTP协议跨域通信安全问题CSRFXSS浏览器渲染机制异步和单线程页面性能优化防抖动Debouncing和节流阀Throttinglazyload前端错误监控虚拟DOM等
十二编辑器相关Sublime Text 是每个学前端的人都要用到的编辑器另外前端常见的IDE有两个WebStorm Visual Studio CodeWebStorm 什么都好可就是太卡顿VS Code就相对轻量很多个人总结一下用VS Code 的人越来越多 WebStorm 的人越来越少具体可以看[第一次使用VS Code时你应该知道的一切配置](https://www.cnblogs.com/qianguyihao/p/10732375.html)》
十三TypeScript简称TSES JS 的标准TS JS 的超集TS属于进阶内容建议把上面的基础掌握之后再学TS
备注框架有时候都很虚熟练掌握 JavaScript 基础才是行走江湖驰骋千里的关键
## 推荐的前端图文教程
我在GitHub上有一个Web前端入门的学习教程非常详细地址是
> <https://github.com/qianguyihao/Web>
非常详细和贴心你值得star这个前端教程主要有三个作用
- 网上的大部分入门教程都不太适合初学者本项目争取照顾到每一位入门者的同理心
- 帮助前端同学提供一个精品学习路线和资源提高学习效率少走很多弯路
- 可以当做前端字典随时翻阅查漏补缺
## 推荐的技术博客
- [阮一峰](http://www.ruanyifeng.com/blog/)
- [张鑫旭](http://www.zhangxinxu.com/wordpress/)
## 推荐的书籍
- [你不知道的JavaScript](https://book.douban.com/subject/26351021/)》
上面这套书有上下三本你都可以读一读如果时间不够那就先读第一本
- [网络是怎样连接的](https://book.douban.com/subject/26941639/)》
程序员面试的时候经常会被问的一个问题是在浏览器的地址栏输入url按下回车后发生了什么
为了清楚这个问题看上面这本书足够了如果你想入门计算机网络这本书也是必读的评价非常高
关于这个问题也可以看下面这篇文章[浏览器输入 URL 后发生了什么](https://zhuanlan.zhihu.com/p/43369093)
- [CSS世界](https://book.douban.com/subject/27615777/)》
关于 CSS 的书籍首先推荐这本书我身边的大佬们都说这本书好虽然我不是大牛但我也觉得这本书很好
如果 js 熟练说明你是有技术深度的前端如果 css 熟练说明你是有经验的前端
## 推荐的链接
- 前端导航<https://www.cnblogs.com/qianguyihao/p/10701923.html>
这个导航里列出了很多常见网站博客工具等整体来看比较权威
学是一方面也是最主要的方面但还有一个作用比如这个前端框架你都不知道啊这个前端大牛你都没听说过啊 此时这份清单就能起到作用了如果能把清单里列出的内容都了解下逼格也会高很多
- MDN 官方文档<https://developer.mozilla.org/zh-CN/docs/Web>
如果你想查看前端的 api 文档请首先去 MDN上看很官方很正规
不要去什么 w3school 上看可能有很多错误
## 前端资讯订阅源
国内的很多技术博客都是比较粗浅的二手知识真正的大佬看不上这些东西
要了解最新的的前端技术趋势前端资讯还得看国外的网站下面这两个前端资讯的网站极力推荐它们都可以通过邮件的形式订阅我认为是前端开发者必须要订阅的
- Daily JS<https://medium.com/dailyjs> - medium 上的博客。
- JavaScript Weekly<https://javascriptweekly.com/> - 聚合类的技术周刊。
## 我的公众号
想学习<font color=#0000ff>**代码之外的技能**</font>****id`qianguyihao`
扫一扫你将发现另一个全新的世界而这将是一场美丽的意外
![](http://img.smyhvae.com/2016040102.jpg)

View File

@@ -0,0 +1,384 @@
## 2018年4月份
### 2018-04-25
- userAgent相关[判断微信内置浏览器的UserAgent](http://www.cnblogs.com/7z7chn/p/5370352.html)
### 2018-04-26
**前端相关**
- 流程图制作工具[ProcessOn](https://www.processon.com/)
- api方法的浏览器兼容性问题可以在这个网站上看<https://caniuse.com/>
- CSS3的兼容性问题不一定要使用-webkit-, -moz-, -o-, -ms-等私有前缀可以使用 PostCSS[知乎](https://www.zhihu.com/question/20597072)
- 浏览器常见的内核有V8WebKit另外腾讯还有个[X5](http://x5.tencent.com/)。
- 要查一下display none visibility hidden的区别
- ES 的各个版本在 Node 环境下的支持情况可以查看这个网站<http://node.green/>
- promise的实现关键词Promises/APromises/B[bluebird](https://github.com/petkaantonov/bluebird)
**综合**
- whistle安装证书后可以拦截 https 请求但是我现在又不想拦截了该怎么卸载证书呢
### 2018-04-27
- [strider](https://github.com/Strider-CD/strider):可以用来部署项目。
- 有必要了解一下电商1.0电商2.0电商3.0的概念
### 2018-05-02
- `location.pathname`获取 url 的后半部分参考链接[#](http://www.cnblogs.com/itjeff/p/4645262.html)
- 代码解读`callback && callback()`的含义
### 2018-05-03
- 各种框架实现的todo项目<http://todomvc.com/>
- 对比 sasslessstylus 这三个css预处理器zqc说后面两个已经不怎么用了sass less强大stylus的书写方式比较奇怪
- npm命令中--save --save-dev的区别参考链接<http://pwcong.me/2017/01/05/npm%E5%BC%95%E5%85%A5%E6%A8%A1%E5%9D%97%E6%97%B6--save-%E4%B8%8E--save-dev-%E7%9A%84%E5%8C%BA%E5%88%AB/>
### 2018-05-07
- Vue组件的注册
有一种组件注册的方式是 Vue+jQuery
```javascript
Vue.component('my-div', $.extend({
props:[],
methods:{
},
filters:{
}
}), vueTpl.subs.myDiv)
```
根据 zqc 的建议不一定要使用`$.extend()`还可以使用`object.assign()`
### 2018-05-08
- skuspu的概念
### 2018-05-09
- 输入框正则的匹配
让输入框仅支持输入单个id且为字符串如果输入多个id或者非数字的字符则自动删除
```javascript
v-on:keyup="querysku = querysku.replace(/\D/,'')"
```
### 2018-05-10
- 如果在控制台看到网络请求陈功数据也获取成功但是在ajax里走的是 error数据获取失败说明是 ajax代码的判断逻辑有问题
- 服务器返回的json数据到底是对象还是字符串
- josn数据里的字段有顺序吗比如下面这段
```jsonn
{
"1492948848": {
"3": "1",
"spec": "",
"imagePath": "hehe.jpg",
"color": "橘色 ",
"name": "【多色可选】丽装铺园纯色百搭简约打底T恤女 橘色 M",
"size": "M"
},
"1492948847": {
"3": "1",
"spec": "",
"imagePath": "lala.jpg",
"color": "灰色 ",
"name": "【多色可选】丽装铺园纯色百搭简约打底T恤女 灰色 S",
"size": "S "
}
}
```
答案顺序不重要
- Vue开发中在其他地方用到Vue实例中的数据时一定要用this或者是`vm.$data.myName`之类的
- 疑问下面的src路径的前面为何要加`//`
```
<img v-bind:src="'//img14.smyhvae.com/evalpic/s240x240_'+value.imagePath" />
```
我发现控制台看到的输出src中会自动加上http如果前面不加`//`则表示相对路径
### 2018-05-11
- 将逗号分隔的字符串转换为数组 `str.split(",")`即使数组中只有一个元素也可以这样用参考链接[#](https://blog.csdn.net/erlian1992/article/details/50561452)
### 2018-05-14
- ajax发的是post请求但是后台却只收到了部分数据怎么办答案前端的post请求记得加content-type字段否则会被识别成 get 请求
- 获取jsonp的数据只能用get请求如果要用post请求那就传json数据另外可能还要解决跨域的问题跨域需要在后台配置三行代码即可
- p标签里的文字溢出怎么办
- whistle该怎样mock数据
### 2018-05-16
- 在控制台看标签的样式发现有些样式是出现在`element.style`中的比如图片的尺寸但是在代码里并没有找到那是因为这些样式是在 js 代码中**计算**出来的
- 图片自适应显示
- [视区相关单位vw, vh..简介以及可实际应用场景](http://www.zhangxinxu.com/wordpress/2012/09/new-viewport-relative-units-vw-vh-vm-vmin/)
- jingwen推荐的iconMoon图标网站网址<https://icomoon.io/>
### 2018-06-01
- `PingFangSC`字体是iOS独有的字体`PingFangSC-Regular`是常规字体`PingFangSC-Semibold`是加粗字体如果我在代码里设置了这个字体那么ios上可以看到效果但是Android上看不到效果仍然会采用Android系统默认的字体
### 2018-06-04
**1git相关**
branch1 中的某条记录(比如myLog)提交到 branch2中做法如下
先切换到branch2中然后输入如下命令
```
git cherry-pick myLog
```
### 2018-06-05
**1font-size**
`font-size`的最小值为12
也就是说浏览器的最小字体为12要是再小于这个值是不生效的如果想要小于12需要在浏览器的高级设置里去修改
**2git 多分支同时开发**
现在有这样一个场景我要同时开发一个项目里的两个功能今天上午开发功能1下午开发功能2明天上午改功能1的bug明天下午改功能2的bug
相当于是我现在是**并行**开发两个功能了要怎么通过git来进行协作呢
目前考虑到的姣好的方式是
- 从master拉分支`branch1`此分支专门用来开发功能1改功能1的bug
- 再从master拉分支`branch2`此分支专门用来开发功能2改功能2的bug
以后需要上线哪个功能就从那个分支merge代码到master
**3其他**
- 两个span之间默认有5px的 margin
- **shadow-root**下一代
### 2018-06-07
- [原生js实现淡入淡出效果](https://www.teakki.com/p/57dfb44cd3a7507f975e91e4)
- 通过 jQuery 获取Dom的时候比如`$('#topNavTop').css('background','red')`记得要指明是 id 还是 class
- 每次开发一个新的需求记得要问清楚H5和小程序都要做吗要做的话工作量基本乘以2
### 2018-06-14
- pvuv的概念
### 2018-06-21
- 今天学会了 iPhone上WebApp的真机调试感觉很高端呀具体可以看我在本文件夹中写的前端开发积累这篇文章
### 2018-06-27
没想到`''``' '`竟然还有区别
### 2018-06-30
**并列条件**
来看下面这段代码
```javascript
var num = 80;
console.log(50 < num <= 70);
```
上面的代码你认为打印的结果是什么其实它打印的结果是 true
如果我们要实现并列条件千万不要使用 `if(50 < num < 70)`而是要使用`if(num > 50 && num <=70)`
### 2018-07-16
**FAQ问答系统**
FAQ是英文`Frequently Asked Questions`的缩写中文意思就是经常问到的问题或者更通俗地叫做常见问题解答
### 2018-08-03
```javascript
let temp = 0.123;
let temp2 = temp.toFixed(2);
```
上方代码中`temp2`的结果是0.12但是请注意`temp`的类型Number型`temp2`的类型却是String型
### 2018-08-15
flex布局常用的三行代码
```
display: flex;
justify-content: center; // 子元素在横轴的对齐方式 (左右居中)
align-items: center; // 子元素在竖轴的对齐方式(上下居中)
```
### 2018-08-16
用CSS3 transition属性实现淡入淡出轮播图<https://segmentfault.com/a/1190000007648070>
### 2018-08-20
**小程序问题**
用小程序调试时如果出现故障比如item点击无响应可能是微信开发者工具IDE的版本太低了注意IDE上上虽然提示是最新版但不一定是官网的最新版所以要去官网下载最新版
如果还是不行看看是不是自己的代码写错了有时候代码写错了不一定会有报错提示哦
**css问题**
- css3实现的switch开关按钮<https://codepen.io/chutou/pen/qdGZQr>
### 2018-08-22
**两个span之间去空格**
- html+css如何删除行内元素之间的空白/空隙<http://www.manongjc.com/article/2171.html>
方法二亲测有效让父亲的font-size为0然后具体设置子元素的font-size
- 去除inline-block元素间间距的N种方法<https://www.zhangxinxu.com/wordpress/2012/04/inline-block-space-remove-去除间距/>
### 2018-08-28-修改用户的cookie
```
document.cookie="visitkey=98"
```
### 2018-09-20
需求当导航条滚动到屏幕顶部时举例顶部的距离 < 0就设置导航条为fixed
实现如果要设置为导航条为fixed正确的做法应该是给导航条这个父亲一个高度进行占位然后让导航条的儿子为fixed而不是让父亲为 fixed
### 2018-09-27
如何让微信小程序禁止下拉_解决小程序下拉出现空白的情况http://www.fly63.com/article/detial/1069
我遇到问题的原因是背景图太大超出了视图
### 2018-10-12
小程序代码中如果我这样写view的度样式
```
height: 60rpx;
line-height: 1.5rem;
```
上面的这种写法并不会让里面的文字上下居中我在 iPhone 7 plus 中看到的结果是文字偏上移
正确的做法是单位一致用rpx不要把两个单位混用
```
height: 60rpx;
line-height: 60rpx;
```
### 2018-10-21
时间戳和年月日的转换<https://blog.csdn.net/qq_26747571/article/details/53289120?locationNum=10&fps=1>
### 2018-11-28
css实现圆环进度条<https://blog.csdn.net/wanglei1991gao/article/details/80009252>
### 2018-12-13
对象数组通过对象的属性进行排序<https://blog.csdn.net/xiaobing_hope/article/details/68638706>

View File

@@ -0,0 +1,249 @@
### 2019-04-02
Vue屏幕宽度自适应
<https://blog.csdn.net/qq_25386583/article/details/77161478>
<https://blog.csdn.net/xuaner8786/article/details/81565219>
### 2019-04-07
- 控制iframe中的页面只显示一部分<https://blog.csdn.net/iteye_18722/article/details/81918563>
### 2019-04-09
```javascript
Date.parse("2019/04/20 18:14:00")
```
上方代码转换的结果单位是`毫秒`不是秒
### 2019-04-23
```javascript
const a = [];
const b = {};
console.log(Boolean(a));
console.log(Boolean(b));
```
上方代码的打印结果均为true 具体解释可以看我在 `03-JavaScript基础/03-变量的强制类型转换.md`这篇文章里讲到的**转换为Boolean**
所以我们平时在写业务代码的时候判断是否为空对象/空数组不能直接写成 `if (myObj)`或者`if(myArray)`会踩坑
判断是否为空数组可以用
```javascript
if (myArray.length)
```
判断是否为空对象可以用
```javascript
if (JSON.stringify(myObj) !== '{}')
```
### 2019-04-26
我们知道在移动端页面尅发时单位一般是采用 rem
设计稿如果是750px宽那么默认换算的单位如下**16px = 1rem**但是这种换算比较麻烦我们可以在 html里加上如下代码
```html
<style>
html {
font-size: 20px;
font-size: 5.3333333vw;
}
</style>
```
这样的话换算单位就变成了**20px = 1rem**
### 2019-05-16
- 数组随机打乱顺序<https://www.zhihu.com/question/68330851/answer/262111061>
最佳的打乱算法是Fisher-Yates算法
### 2019-05-16
Vue的全局变量空间`this.$root.data`我们可以在这里面存放数据比如`this.$root.data.skuIdList`
### 2019-05-17
- css 动画实现闪烁效果<https://blog.csdn.net/wangxiuyan0228/article/details/80701523>
### 2019-05-20-css3动画水平/镜像翻转
参考链接1<https://www.oschina.net/question/2443483_247744>
代码实现举例
```html
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8" />
<title></title>
<style>
@keyframes featuresicon {
0% {
transform: scaleX(1);
}
20% {
transform: scaleX(1);
}
50% {
transform: scaleX(0);
}
80% {
transform: scaleX(1);
}
100% {
transform: scaleX(1);
}
}
.cube {
width: 40px;
height: 40px;
background: url(images/bg2.png) left 0 no-repeat;
animation: featuresicon 1.3s linear alternate none infinite;
}
body {
background-color: cornflowerblue;
}
</style>
</head>
<body>
<div class="cube"></div>
</body>
</html>
```
参考链接2<https://blog.csdn.net/wjnf012/article/details/78679131>
代码实现立体感更强一点
```html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<style type="text/css">
*{
padding: 0;
margin: 0;
}
.cube{
display: block;
color: #ffffff;
text-align: center;
width: 40px;
height: 40px;
border-radius: 4px;
/* background-color: #9a6ad8 */
background: url(images/bg.png) left 0 no-repeat;
animation: proRotate 1.3s ease-in-out 500ms alternate none infinite;
}
@keyframes proRotate {
0%{transform:perspective(200px) rotateY(180deg);}
100%{transform:perspective(200px) rotateY(0deg);}
}
</style>
</head>
<body>
<div class="test_wrap">
<div class="cube"></div>
</div>
<body>
</html>
```
### 2019-05-22-判断字符串是否为纯中文
参考链接https://blog.csdn.net/wozaixiaoximen/article/details/48340061
### 2019-05-24
- VScode代码格式化后不符合ESLint风格问题处理<https://blog.csdn.net/SilenceJude/article/details/81589784>
### 2019-05-27-针对 text 文本的属性举例
```css
&_promote {
margin-left: 10px;
display: inline-block;
height: 20px;
padding: 4px;
line-height: 20px;
background: #fff0f0;
border-radius: 4px;
font-size: 20px;
color: #ff4142;
white-space: nowrap;
text-overflow: ellipsis;
overflow: hidden;
vertical-align: middle;
}
```
尤其要研究一下 `vertical-align: middle;`这个属性
### 2019-06-11
已知某背景图片的尺寸是586 * 931现只截图图片的上面一部分区域586 * 810做展示代码实现如下
标签部分
```html
<div class="img"> </div>
```
css部分重点是 background 属性的写法
```css
.img{
width: 586rpx;
height: 810rpx;
background: url('https://img11.360buyimg.com/jdphoto/s586x931_jfs/t1/27766/15/3237/102443/5c258955Ee307620e/21a744b0d2e065b3.png') 0 0/cover no-repeat;
margin: 0 auto;
}
```
### 2019-08-25
使用hover为div添加边框时页面布局发生错位的解决办法https://blog.csdn.net/u014033756/article/details/51049574

View File

@@ -0,0 +1,4 @@
### 2020-06-04-跨域问题
如果遇到跨域问题先尝试下 https 或者 http跨域不一定是域名问题也可能是协议头的问题

View File

@@ -0,0 +1,13 @@
### p标签里的文字溢出怎么办
加一个属性即可
```css
word-break: break-all;
```
### inline-block 相关
图片默认是 inline-block 布局会存在经典的底部 3px 的问题

View File

@@ -0,0 +1,31 @@
## Express介绍
- Express 官方网站<https://expressjs.com/>
- Express 官方网站中文<https://expressjs.com/zh-cn/>
## Express 安装
安装 express
```bash
npm install express -g
```
安装 express-generator安装之后可使用应用程序生成器工具 (express) 快速创建应用程序框架
```bash
npm install express-generator -g
```
查看安装的 express 版本
```bash
express --version
```

View File

@@ -0,0 +1,19 @@
### jsonp ajax
ajax跨域访问是一个老问题了解决方法很多比较常用的是JSONP方法JSONP方法是一种非官方方法而且这种方法只支持GET方式不如POST方式安全
意思是说如果后台返回的数据类型是jsonp那么前端的请求方式只能是get不能是post
如果跨域使用POST方式可以使用创建一个隐藏的iframe来实现与ajax上传图片原理一样但这样会比较麻烦
因此**前端使用post方法数据类型是json**的情况下如果想跨域的话可以通过设置Access-Control-Allow-Origin来实现跨域访问比较简单
参考链接
- [ajax 设置Access-Control-Allow-Origin实现跨域访问](https://blog.csdn.net/fdipzone/article/details/46390573/)

View File

@@ -0,0 +1,32 @@
## SSI服务器端嵌入
SSIServer Side Include服务器端嵌入
通俗点讲就是在本地的html页面中插入服务器上的文件静态页面中插入动态的代码
比如
```html
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<style>
</style>
<!--#include virtual="/sinclude/common/head_inc.shtml"-->
<!--#include virtual="/sinclude/common/head_shortcut.shtml"-->
<!--#include virtual="head.shtml"-->
</head>
```
上面的代码中注释里的代码就是SSI部分它加载的是服务器端的html页面

View File

@@ -0,0 +1,102 @@
```html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<script src="vue2.5.16.js"></script>
</head>
<body>
<div id="app">
<div v-for="(value,key) in myData">
<p>{{key}}</p>
<p>{{value.name}}</p>
</div>
</div>
<script>
var dataList = [
{ id: 11492948852, price: "49.90" },
{ id: 11492948847, price: "39.90" }
];
var datas = {};
var dataList2 = {
"11492948852": {
"3": "1",
"spec": "",
"imagePath": "jfs/t3136/15/8874896477/153924/ee5100df/58cb7fa8N64311629.jpg",
"color": "白色 ",
"name": "【多色可选】丽装铺园纯色百搭简约打底T恤女 白色 XL",
"size": "XL"
},
"11492948847": {
"3": "1",
"spec": "",
"imagePath": "jfs/t3109/27/9469817576/176241/aa424d04/58d4c849Ne22114ed.jpg",
"color": "灰色 ",
"name": "【多色可选】丽装铺园纯色百搭简约打底T恤女 灰色 S",
"size": "S "
},
"11325444606": {
"3": "1",
"spec": "",
"imagePath": "jfs/t4447/354/3613344795/347891/4800da35/5901549fN468c7073.jpg",
"color": "叶脉-五骨",
"name": "迷你超轻小太阳伞雨伞小清新口袋伞 黑胶防晒五折两用遮阳伞 防紫外线折叠太阳伞 叶脉-五骨 五折伞",
"size": "五折伞"
},
"11492948848": {
"3": "1",
"spec": "",
"imagePath": "jfs/t3076/90/7623078170/152165/9fe8c39d/58b94105N8ed8d2c0.jpg",
"color": "橘色 ",
"name": "【多色可选】丽装铺园纯色百搭简约打底T恤女 橘色 M",
"size": "M"
}
}
dataList.forEach(function (item) {
for (item2 in dataList2) {
if (item.id == item2) {
console.log('匹配成功');
datas[item.id] = { imagePath: dataList2[item2].imagePath, name: dataList2[item2].name }
}
}
})
console.log(JSON.stringify(datas));
new Vue({
el: "#app",
data: {
myData: dataList2,
},
methods:{
clickMethod:function(){
}
}
});
</script>
</body>
</html>
```

View File

@@ -0,0 +1,10 @@
## json中根据键获取值
参考链接
- <http://yuxisanren.iteye.com/blog/1895807>
- <https://blog.csdn.net/w405722907/article/details/72828041>

View File

@@ -0,0 +1,316 @@
## 前言
以下内容来自微信群的部分优质分享不定期更新文中涉及的内容和链接均为群友自主推荐自主分享
### 2019-05-10
**1深圳-团长**
新手学习Node.js
- 推荐狼叔的如何正确学习Node.js地址https://github.com/i5ting/How-to-learn-node-correctly
- Node.js国内交流社区https://cnodejs.org/
- 推荐书籍Node.js实战第二版Node.js调试指南深入浅出Node.js有一定的基础后再看更了不起的Node.js据说今年会出版
备注在一个QQ群里看到的仅供参考
**2深圳-团长**
- promise的各种用法<https://github.com/sindresorhus/promise-fun>
小组的一位同事今天在周会上重点分享和讲解了这个项目说这个项目非常吊
如果掌握了 promise 的深层次用法绝对吊打面试官
我看了下这个项目作者的介绍也很牛逼
2014年之后作为自由职业者全职做开源社区的项目一边做开源项目一边背包环游东南亚目前已经在泰国曼谷定居但仍然每天都在做开源
**3广州-小阳**
- VS Code插件推荐Code Runner
我之前想跑js代码都是写在html文件里的然后就找到了这个可以直接运行
**4深圳-团长**
高效易用的自动标注工具**PxCook像素大厨**软件下载链接<https://www.fancynode.com.cn/pxcook>
可以直接标注 PhotoshopSketch 的设计原稿很方便
我们小组的一位前端妹子刚刚在用大呼好用于是一堆人跑过去围观所以我推荐下
### 2019-05-09
**1上海-前端-强子**
- [从Oracle的裁员技术专家陷阱](https://mp.weixin.qq.com/s/oiPGntttmA-NFEYQMEfwxQ)》
**2上海-前端-强子**
- 阮一峰推特更新<https://juejin.im/user/5a586bc66fb9a01cb1391339>
**3深圳-团长**
- 推荐一个chrome插件**FireShot**滚动截长图很流畅
**3杭州~nan**
- [零基础转行去阿里做前端创业当 CTO他是如何做到的](https://blog.csdn.net/csdnsevenn/article/details/90033230)》
**4广州-斌桑**
- [考研到底值不值得](https://mp.weixin.qq.com/s/QPRAMmBk-gHzYQOU_0CzHg)》
### 2019-05-08
**1深圳-团长**
- 带你了解一下科技类图书四大社<https://www.jianshu.com/p/b65ac62bf407>
到目前为止有三个品牌真正立起来了读者认作者也认
- 人民邮电出版社图灵公司合资企业
- 电子工业出版社博文视点全资子公司
- 机械工业出版社华章公司合资公司
- 而清华大学出版社没有一个拿得出手的品牌有些可惜
**2上海-乐亦栗**
偶然发现张鑫旭大佬一篇旧文分享出来希望对大家有用
- 话说我为什么要闭关学习<http://www.zhangxinxu.com/life/?p=98>
一点感慨就算张鑫旭大佬从事别的事业肯定也是拔尖的
**3深圳-核桃**
- 2018年8月中级前端开发推荐书籍<https://zhuanlan.zhihu.com/p/40761206>
张鑫旭的CSS世界真是写的是真的好准备翻出来看第三遍了我最近看的书都是按照这个书单看的前面基本还可以Node.js:来一打C++扩展后面开始感觉就有点get不到书里面的主题了
### 2019-05-07
**1广州 lien**
- [编程语言的发展趋势从没有分号到DSL](https://www.imooc.com/read/27/article/254)》
### 2019-05-06
**1深圳-团长**
- Python - 100天从新手到大师<https://github.com/jackfrued/Python-100-Days>
这个项目的作者是 千锋培训机构的讲师
**1广州 lien**
- 我司用的 mock 工具是`eoLinker AMS 开源版本4.0`
**2上海-前端-邱明**
- [一名合格前端工程师的自检清单](https://juejin.im/post/5cc1da82f265da036023b628)》
### 2019-05-05
**1上海-前端-强子**
- 阿里云前端技术周刊<https://github.com/aliyunfe/weekly>
**2武汉-林夕之间**
- 国内10大前端团队网站<https://zhuanlan.zhihu.com/p/60091235>
**3深圳-pubdreamcc**
- 腾讯新闻前端团队维护的一个周刊<https://github.com/Tnfe/TNFE-Weekly>
**4上海-gzd**
- vue 作者写的 todolist<http://todomvc.com/examples/vue/>
### 2019-05-01
**1深圳-团长**
- [那些年的体验技术部](https://www.yuque.com/afx/blog/those-days)》
**2广州-古力**
- [JavaScript 高性能数组去重](https://www.cnblogs.com/wisewrong/p/9642264.html)》
### 2019-04-30
**1成都-颜乐乐**
- <https://github.com/frontend9/fe9-library>
这个是阿里蚂蚁为首的一群开发者发起的一个组织 专门做前端知识布道工作 输出各种高质量技术文章以及各种技术教程
里面的文章从出门级别到架构级别的各种框架测试其他应用层面的应有尽有
### 2019-04-28
**1上海-前端-强子**
分享一个小程序名叫GitHub专业版
**2深圳-核桃**
看到一篇to b产品UX & UI 设计总结不错
- 后台产品 UX & UI 设计总结- 设计要点概括<https://zhuanlan.zhihu.com/p/28787738>
**3广州Brenner**
- web安全学习笔记<https://websec.readthedocs.io/>
**4北京夜微凉**
- 可能是最全的前端动效库汇总<https://juejin.im/post/5cc089eae51d456e7d189f9d>
**5成都-颜乐乐**
前一段时间还撸了一个 node 爬虫TS+puppeteer+cheerio+fs-extra
- <https://github.com/yanlele/node-spider>
因为用了headless brower 所以就算是单页应用 也不要用怕爬去不到数据
模仿浏览器访问也不用担心 ip 被封
python node 爬虫适应范围不一样python 可以做分布式集群做数据管理和分析 可以直接同构代码一把梭
node 爬虫 更加贴近于前端节点访问请求
如果没有企业级需求 每天抓个几百万的那种 个人项目临时整点儿数据和或者临时需要抓取 数据node 很好用的
很简单一个道理 我们一个后台应用 对接十几个Java服务 需要一个调度者去支配这些服务和调度这些服务 当然Java也可充当这个角色 但是node的异步非阻塞模型 显然这这个场景 比Java优势大
可以参考阿里技术体系他们nodejs 在服务端基本上就是发挥这个作用 传统后端 controller -> service -> model, 可以理解为nodejs 中间层就干了 一个 controller view 的工作 java 可以专注于service 业务实现
推荐阅读文章
- 使用JavaScript写爬虫<https://zhuanlan.zhihu.com/p/53763115>
**6成都-颜乐乐**
mysql相关的书籍推荐深入浅出MySQL 数据库开发 优化与管理维护
### 2019-04-27
**1上海-前端-强子**
- 猴子都能懂的Git入门<https://backlog.com/git-tutorial/cn/>
**2广州-萧雪圣**
- 像玩游戏闯关一样学习git: <https://learngitbranching.js.org/>
### 2019-04-26
**1成都-颜乐乐**
推荐一个前端测试全干货陆陆续续总结整理了大半年才成了现在的体系
- <https://github.com/yanlele/node-index/tree/master/book/13%E3%80%81%E6%B5%8B%E8%AF%95%E4%B8%93%E9%A2%98>
前端单元测试非常重要很简单的一个例子别人写了一个很复杂的模块功能怎么学习别人的代码最简单的办法就是跑测试
测试对于学习代码和看源码非常重要
深圳-团长 备注会前端单元测试是很加分的虽然我不会但准备学一学
上海-前端-强子 备注这个不错别人的发的东西先加入到需整理列表里面后面空闲了慢慢消化内化成自己的知识体系
**2成都-颜乐乐**
再推荐一个学习javascript数据结构与算法是当年吃javascript数据结构与算法 [巴西] Loiane Groner 孙晓博等译 这本书总结的熟肉
- <https://github.com/yanlele/node-index/tree/master/book/09%E3%80%81%E5%AD%A6%E4%B9%A0javascript%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84%E4%B8%8E%E7%AE%97%E6%B3%95>
吃完了文章很多东西 用自己的语言方式组织精简过也加了很多自己的理解和备注
**3成都-颜乐乐**
吃了javascript设计模式 张容铭 这本书之后 吐出来的熟肉
- <https://github.com/yanlele/node-index/tree/master/book/04%E3%80%81js%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F>
这个数设计模式思想非常好写的很棒不过基本上都是ES5语法这本书上出现的所有 demo 被我改成了es6 写法计思想被我精简过和加上了一些自己的备注理解
**4北京-Rocky**
- 各种免费的 PDF 在线工具<https://www.ilovepdf.com/>
**5深圳-团长**
- 一名合格前端工程师的自检清单<https://juejin.im/post/5cc1da82f265da036023b628>
**6成都-颜乐乐**
- 关于 css 实现多行**文字截断**问题<https://segmentfault.com/a/1190000008649988>
**7杭州~nan**
- [2019第4届中国前端开发者大会](https://mp.weixin.qq.com/s/6ZuLEQZLsu7GUquwSgJT2w)》
**8深圳-团长**
- [深圳IT互联网大厂有哪些2019年版](https://github.com/qianguyihao/Web/blob/master/17-%E5%89%8D%E7%AB%AF%E7%BB%BC%E5%90%88/03-%E6%B7%B1%E5%9C%B3IT%E4%BA%92%E8%81%94%E7%BD%91%E5%A4%A7%E5%8E%82%E6%9C%89%E5%93%AA%E4%BA%9B%EF%BC%882019%E5%B9%B4%E7%89%88%EF%BC%89.md)》
**9深圳-工兵**
- IOS加**阻尼滑动**可能导致的bug和处理方法https://www.cnblogs.com/hrone/p/10143960.html
团长备注滚动穿透阻尼滑动都是移动端的常见问题可以关注下
### 2019-04-18
**1深圳-团长**
**蓝湖**一款产品文档和设计图的在线协作平台网址<https://lanhuapp.com>
最近在做一个需求我们设计师用到了这个网站大家可以了解下拓展视野
广州-萧雪圣补充蓝湖这个我上家和现在公司都在用UI用这个出效果图标注好各种尺寸前端也比较好开发还可以直接下载切图用得好是个能提高开发效率的工具
### 2018-12-27
**1上海-前端-强子**
- 前端大佬汇总<http://caibaojian.com/c/qianduan>
团长备注几位前端大佬基本都在里面了除了我
**2广州Brenner**
- Canvas: Draw on the webHTML5 Canvas 教程<https://www.yuque.com/airing/canvas>
上海-前端-强子 备注这个很不错我前几天做分享战绩的时候就用到这个了

View File

@@ -0,0 +1,13 @@
## 前端博客推荐
- 冴羽的博客<https://github.com/mqyqingfeng/Blog>
冴羽写博客的地方预计写四个系列JavaScript深入系列JavaScript专题系列ES6系列React系列
- 颜乐乐<https://github.com/yanlele/node-index>
在头条做前端博客内容很全尤其是单元测试系列

View File

@@ -0,0 +1,31 @@
### SPU SKU
SKUstock keeping unit库存量单位 SKU是物理上不可分割的最小库存单元通俗来讲你可以把 sku 理解成是**最小单元**
SPUStandard Product Unit标准化产品单元是商品信息聚合的最小单位通俗来讲你可以把 spu 理解成是**某一类的单元**
比如说针对 Kindle paperwhite4 这款阅读器颜色分白色黑色两种那么白色和黑色的sku是不一样的因此Kindle paperwhite4 这款阅读器有**两个sku一个spu**
再比如说针对 iPhone 8 这款手机颜色有银色红色金色三种存储空间有分64G256G两种那么64G和256G的sku是不一样的不同的颜色也代表着不同的sku因此iPhone 8 这款手机有**六个sku一个spu**
单品对一种商品而言当其品牌型号配置等级花色包装容量单位生产日期保质期用途价格产地等属性中任一属性与其他商品存在不同时可称为一个单品
### 移动端WebApp前端真机调试iPhone/iOS借助Safari进行真机调试
1手机端设置 Safari 高级 Web 检查器
2mac端Safari 偏好设置 高级 在菜单栏中显示开发菜单
3 OS X 中启动 Safari 之后 USB 电缆正常接入 iOS 设备并在此移动设备上启动 Safari此时点击计算机上的 Safari 菜单中的开发可以看到有 iOS 设备的名称显示其子菜单项即为移动设备上 Safari 的所有标签页点击任意一个开始调试如下
![](http://img.smyhvae.com/20180621_1900.png)
参考链接
- [移动端前端开发真机调试攻略](https://juejin.im/entry/563ab66400b0bf37d79aa17d)
- [iOSAndroid 之类的如何调试 Web APP](https://segmentfault.com/q/1010000000124121)

View File

@@ -0,0 +1,4 @@
### 2020-04-19
语言的强大在于它的生态如果是站在巨人的肩膀上就不用做太多重复的事情

View File

@@ -0,0 +1,10 @@
- 图片的宽度最好不要超过800px否则在github上显示不完整甚至无法显示
- 建议把图片压缩后再上传图片大小最好控制在100kb左右比如说[javascript-tutorial-cn](https://github.com/iliakan/javascript-tutorial-cn)这个项目,在这方面就做得很好。
比如`20180223_2201.gif`这张图原本是500kb我压缩后重新上传是200kb
再比如`20180611_2130.png`这张图原本是400kb我压缩后重新上传是200kb