<commit_before># -havefive.github.io

## 前言#

定个小目标，打今儿起，陆续分享一些前端的干货出来，力求逐步完善自己的前端知识体系，也希望对大家有所帮助。这里不做鸡汤，如果非要与吃相关的话，干脆做个火锅，大家一起分享啊。

如果你也有类似的想法或者不一样的见解，可以提PR或issue啊。

做了前端3年，一般都是看到别人分享的，自己总有些经验和体会，这里也分享一下，总结些别人没有的，比如前端工作职位、面试、技术实践等等。

## 备注#
前端高能。。。


## 主要内容#

* 1.解读和分析常见前端岗位岗位职责和岗位要求
* 2.剖析常见前端面试题。
* 3.解读分析常见前端技术问题。

注：前端岗位主要来源Google，Apple,Alibaba,腾讯等大公司。分析时会举例和动手实践来阐述。


###岗位职责类

1. 优化客户端页面代码的性能

```
解答：这个是前端的常见工作内容之一，指优化现有前端页面，为了让用户访问起来更快，和交互更加友好。
面试官常常会问怎么去优化前端的页面，雅虎曾提出来前端优化十四条规则，这里可以结合自己的实践来进行回答。
```
2. 解决不同浏览器和不同版本的兼容性问题

```
解答：这个是前端工作面临的主要问题之一，指让前端页面兼容用户使用的不同浏览器，熟悉各种浏览器平台的特性，这里可以谈一下怎么避免发生和解决问题。可以结合自己解决的来进行回答。
```
3. 协助设计师实现页面及交互，协助研发完成前后端合并

```
解答：前端工作是一份承前启后的工作，前面配合设计师实现页面和交互，后面协助服务端完成前后端合并，所以做好前端工作需要很好的沟通和合作能力，需要与各种背景的人进行通力合作。
```
4. 不断学习研究新的技术，并能迅速转化到潜在项目中。

```
解答：前端的技术发展相对比较快的，从nodejs出现后发展更是非常迅猛，而且有很多都开源共享了，比如angular,vue,react等等,有空就需要学习，而且它们本身也在不断迭代，不要老看热闹，要去使用，去做项目才能发现它们真正能解决的问题和优化了什么，当然也存在一定的坑，多去github上提提pr,与大牛们一起完善，相信会学到很多。
```

###岗位要求类

1.有大型网站开发经验

```4.
解答：怎样的网站是大型网站，可以基于访问量和页面复杂度等指标来阐述，也许访问量国内排名500名以内，才算吧。
```

2.熟悉http的工作原理

```
解答：这个必须的，面试也常被问到：http的工作原理是什么？HTTPS是什么。
```
3.区分对技术的了解/熟悉/掌握
```
解答：它们的区别是什么呢？举个例子，了解相当于知道1+1=2，熟悉相当于1+1+1=3，掌握相当于知道1+1是因为十进制加法才等于二，二进制加法不会等于2，而是等于10.所以对技术来说，了解的程度相当于知道可以做什么，熟悉相当于运用于实践，掌握相当于明白原理，知根知本。
```
4.能够写原生组件
//Todo

5.最近学习了什么
// ant-design
// mobile-ant-design
// weex
// vue
// next.js

###面试题目类

1. sessionStorage 和 localStorage
2. css 动画 和 js 动画
3. 对前端（Front End Engineer）工作的理解
4. CSS 的垂直居中 参考http://gold.xitu.io/post/582c04032f301e00594327d4
5. 学习前端的 4 本书籍《编写可维护的Javascript》，《图解HTTP》，《Javascript设计模式与开发实践》，《Web前端开发最佳实践》


<commit_msg>add ali<commit_after># -havefive.github.io

## 前言#

定个小目标，打今儿起，陆续分享一些前端的干货出来，力求逐步完善自己的前端知识体系，也希望对大家有所帮助。这里不做鸡汤，如果非要与吃相关的话，干脆做个火锅，大家一起分享啊。

如果你也有类似的想法或者不一样的见解，可以提PR或issue啊。

做了前端3年，一般都是看到别人分享的，自己总有些经验和体会，这里也分享一下，总结些别人没有的，比如前端工作职位、面试、技术实践等等。

## 备注#
前端高能。。。


## 主要内容#

* 1.解读和分析常见前端岗位岗位职责和岗位要求
* 2.剖析常见前端面试题。
* 3.解读分析常见前端技术问题。

注：前端岗位主要来源Google，Apple,Alibaba,腾讯等大公司。分析时会举例和动手实践来阐述。


###岗位职责类

1. 优化客户端页面代码的性能

```
解答：这个是前端的常见工作内容之一，指优化现有前端页面，为了让用户访问起来更快，和交互更加友好。
面试官常常会问怎么去优化前端的页面，雅虎曾提出来前端优化十四条规则，这里可以结合自己的实践来进行回答。
```
2. 解决不同浏览器和不同版本的兼容性问题

```
解答：这个是前端工作面临的主要问题之一，指让前端页面兼容用户使用的不同浏览器，熟悉各种浏览器平台的特性，这里可以谈一下怎么避免发生和解决问题。可以结合自己解决的来进行回答。
```
3. 协助设计师实现页面及交互，协助研发完成前后端合并

```
解答：前端工作是一份承前启后的工作，前面配合设计师实现页面和交互，后面协助服务端完成前后端合并，所以做好前端工作需要很好的沟通和合作能力，需要与各种背景的人进行通力合作。
```
4. 不断学习研究新的技术，并能迅速转化到潜在项目中。

```
解答：前端的技术发展相对比较快的，从nodejs出现后发展更是非常迅猛，而且有很多都开源共享了，比如angular,vue,react等等,有空就需要学习，而且它们本身也在不断迭代，不要老看热闹，要去使用，去做项目才能发现它们真正能解决的问题和优化了什么，当然也存在一定的坑，多去github上提提pr,与大牛们一起完善，相信会学到很多。
```

###岗位要求类

1.有大型网站开发经验

```4.
解答：怎样的网站是大型网站，可以基于访问量和页面复杂度等指标来阐述，也许访问量国内排名500名以内，才算吧。
```

2.熟悉http的工作原理

```
解答：这个必须的，面试也常被问到：http的工作原理是什么？HTTPS是什么。
```
3.区分对技术的了解/熟悉/掌握
```
解答：它们的区别是什么呢？举个例子，了解相当于知道1+1=2，熟悉相当于1+1+1=3，掌握相当于知道1+1是因为十进制加法才等于二，二进制加法不会等于2，而是等于10.所以对技术来说，了解的程度相当于知道可以做什么，熟悉相当于运用于实践，掌握相当于明白原理，知根知本。

常见岗位要求：对流行的前端技术有深刻理解；
```
4.能够写原生组件
//Todo

5.最近学习了什么
// ant-design
// mobile-ant-design
// weex
// vue
// next.js

###面试题目类

1. sessionStorage 和 localStorage
2. css 动画 和 js 动画
3. 对前端（Front End Engineer）工作的理解
4. CSS 的垂直居中 参考http://gold.xitu.io/post/582c04032f301e00594327d4
5. 学习前端的 4 本书籍《编写可维护的Javascript》，《图解HTTP》，《Javascript设计模式与开发实践》，《Web前端开发最佳实践》



{'fraction_non_alphanumeric': 0.13858946720049276, 'fraction_numerical': 0.03387742531567601, 'mean_word_length': 8.902439024390244, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3151053', 'n_tokens_mistral': 2973, 'n_tokens_neox': 3370, 'n_words': 134}