您的位置:首页 > 职场人生

JS 面试知识学习历程(第八天) -- JS开发环境

2018-02-02 17:32 337 查看

Chapter8 JS开发环境

这是我自己的学习过程总结,如果有什么写的不清楚的地方,欢迎大家交流、批评、提问。可以在这里评论,也可以在github上提问,谢谢大家

IDE(写代码的效率)

git(代码版本管理,多人协作开发)

JS模块化

打包工具

上线回滚的流程

8.1 IDE

webstorm

sublime

vscode

atom

插件

8.2 Git

正式项目都需要代码版本管理

大型项目需要多人协作开发

Git 和 linux 是一个作者

网络Git服务器如 coding.net github.com gitee.com

一般公司代码非开源,都有自己的Git服务器

常用Git命令

git add . // 增加某个或全部文件

git checkout xxx // 取消某个文件

git commit -m “xxx” //提交本地仓库 后面是备注

git push origin master // 提交远程仓库的master分支

git pull origin master // 获取

git branch // 当前分支

git checkout -b xxx / git checkout xxx // 新建分支,切换分支

git merge xxx // 合并分支代码

8.3 JS模块化

不实用模块化

层层引用

util.js getFormatDate函数

a.util.js aGetFormatDate函数 使用getFormatDate函数

a.js aGetFormatDate

// util.js
function getFormatDate(date, type
4000
) {
// type === 1 返回 2017-06-15
// type === 2 返回 2017年6月15日
// ...
}

// a-util.js
function aGetFormatDate(date) {
// 要求返回 2017年6月15日 格式
return GetFormatDate(date, 2)
}

// a.js
var dt = new Date()
console.log(aGetFormatDate(dt))


<!-- 使用  -->
<script src="util.js"></script>
<script src="a-util.js"></script>
<script src="a.js"></script>

<!-- 1. 这些代码中的函数必须是全局变量,才能暴漏给使用方,全局变量污染 -->
<!-- 2. a.js 知道要引用 a-util.js,但是他知道还需要依赖与util.js吗?  -->


使用模块化

//util.js
export {
getFormatDate: function (date, type) {
// type === 1 返回 2017-06-15
// type === 2 返回 2017年6月15日
// ...
}
}

// a-util.js
var getFormatDate = require('util.js')
export {
aGetFormatDate: function (date) {
// 要求返回 2017年6月15日 格式
return GetFormatDate(date, 2)
}
}

// a.js
var aGetFormatDate = require('a-util.js')
var dt = new Date()
console.log(aGetFormatDate(dt))

// 使用直接`<script src="a.js"></script>`,其他的根据依赖关系自动引入
// 那两个函数没必要做成全局变量,不会带来污染和覆盖


AMD(Asynchronous Module Definition 异步模块定义)

require.js requirejs.org/

全局 define 函数

全局 require 函数

依赖JS会自动、异步加载

CommonJS

nodejs 模块化规范,现在被大量用于前端开发的原因:

前端开发依赖的插件和库,都可以从npm中获取

构建工具的高度自动化,使得使用npm的成本非常低

CommonJS不会异步加载JS,而是同步一次性加载出来

打包工具

webpack

参看专门说明webpack的文章

上线和回滚

1.上线和回滚的基本流程

上线流程的要点

将测试完成的代码提交到git版本库的master分支

将当前服务器的代码全部打包并记录版本号,备份

将master分支的代码提交覆盖到线上服务器,生成新版本号

回滚流程要点

将当前服务器的代码打包并记录版本号,备份

将备份的上一个版本号解压,覆盖到线上服务器,并生成新的版本号

2. linux基本命令

mkdir a
ls
ll
cd a
pwd
cd ../
rm -rf a
vi a.js
cp a.js a1.js
mkdir src
mv a1.js src/a1.js
rm a.js
cat a.js
head -n 1 a.js
tail -n 2 a.js
grep '2' a.js


gitbub地址 持续更新 可下载

https://github.com/zust-hh/JavaScript_interviewing_knowledge_learning
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: