互联网部-供应商团队js规范
文件命名
页面、js文件命名:采用中划线连接方式,比如说: error-report.html
js文件夹命名:scripts
公共js命名:common.js
文件结构组织
每个页面中中独有的js文件,/scripts文件夹下js文件结构应与页面结构一致
JS语法
变量声明 |
function doSomethingWithItems(items) { var value = 10, // 注释啊,注释啊,亲 所有函数内变量声明放在函数内头部,只使用一个 var,也必须使用var |
标准变量采用驼峰标识 |
var thisIsMyName; |
函数声明 |
var doSomething = function (item) { |
括号对齐 |
if (condition) { 花括号必须要,即使内容只有一行 |
在方法之间、单行或多行注释前、逻辑块之间加入空行,增加可读性 | |
逗号、分号后留一个空格 |
var values = [ 1, 2, 3, 4, 5, 6, 7 ], |
字符常量统一使用单引号' |
var str = '123'; |
for-in |
var prop; for (prop in object) { // 注意这里一定要有 hasOwnProperty 的判断, 否则 JSLint 或者 JSHint 都会有一个 warn ! |
switch |
switch (condition) {
|
构造函数,大写第一个字母 |
function Person(name) { |
使用的ID的地方一定全大写 |
var goodID; |
使用的URL的地方一定全大写 |
var reportURL; |
常量采用大写字母,下划线连接的方式 |
var MAX_COUNT = 10; |
页面js代码内部结构组织
在这,首先要说的是,我们是后端人员,在部门刚起步前后端未分离的情况下,负责了页面中js的编码
下面写的在前端看来是些很烂的东西,但路要一步步走,只能在考虑我们工作难度的基础上实现代码的部分规范
真正的前端甚至可以用MVC框架,但我们不可以,在这首先要考虑的是工作量与新人的适应性
页面js代码内部分为4部分
第一部分
<script language="javascript">
//唯一全局变量
var thisPage = {};
</script>
第二部分
/*页面数据复杂初始化或回填*/
(function ($) { //大多数页面此处为空,复杂回填在此进行,每个操作上方用/**/标明功能,内部用//注释 /*美化html控件*/
$(document).myFormElement(); })(jQuery);
第三部分
/*页面方法——基本用于事件绑定*/
(function ($) { //每个函数上方用/**/标明功能,内部用//注释 /*快捷搜索*/
thisPage.quickSearch = function(pageNum){
//内部实现
alert(pageNum);
}; })(jQuery);
第四部分
/*页面方法——事件绑定*/
(function ($) { //每个事件绑定上方用/**/标明功能,内部用//注释 /*搜索按钮点击事件*/
$(".qs").on('click', function(){
myIndex.quickSearch(1);
}) })(jQuery);
互联网部-供应商团队js规范的更多相关文章
- 前端开发规范:命名规范、html 规范、css 规范、js 规范
上周小组的培训内容是代码可读性艺术,主要分享如何命名.如何优化代码排版,如何写好的注释.我们都知道写出优雅的代码是成为大牛的必经之路. 下面感谢一位前端开发小伙伴总结的前端开发规范,通过学习相关开发规 ...
- 中小型前端团队代码规范工程化最佳实践 - ESLint
前言 There are a thousand Hamlets in a thousand people's eyes. 一千个程序员,就有一千种代码风格.在前端开发中,有几个至今还在争论的代码风格差 ...
- js规范
js规范 Array 和 Object 直接量 为了避免这些歧义, 我们应该使用更易读的直接量来声明. var a = [x1, x2, x3]; var a2 = [x1, x2]; var a3 ...
- Git常用命令和Git团队使用规范指南
转自:https://wsgzao.github.io/post/git/ 前言 在2005年的某一天,Linux之父Linus Torvalds 发布了他的又一个里程碑作品——Git.它的出现改变了 ...
- 【重点突破】—— Easy Mock的使用及Mock.js规范
前言:在线使用Easy Mock可视化工具,可以提供快速生成“模拟数据”的持久化服务: Mock.js是一个JS插件,指定了一套规范,而Easy Mock工具就遵循这些规范. 一.Easy Mock ...
- 前端开发规范之命名规范、html规范、css规范、js规范
在学习编程的时候,每次看到那些整齐规范的代码,心里顿时对这个程序员表示点点好感,有时,比如看到自己和朋友写的代码时,那阅读起来就是苦不堪言,所以,一些基本的开发规范是必须的,是为了自己方便阅读代码,也 ...
- iOS团队代码规范
iOS团队代码规范 工程之始可能需要的工具: 1.使用CocoaPods类库管理工具.CocoaPods安装和使用教程. 2.下载安装注释插件VVDocumenter-Xcode. 一.项目结构管理 ...
- 腾讯Alloy团队代码规范
概述 我个人很看重代码规范,因为代码是写给别人看的,按规范写别人才更容易理解.之前苦于没有代码规范的资料,现在在github上面看到了腾讯Alloy团队的代码规范,于是学习了一下,并记录下我自己还没怎 ...
- JS规范2
百度SS Javascript编码规范 1.变量.方法命名必须匹配正则:/^[$_a-zA-Z]\w*$/ /** * 虽然Javascript引擎支持多种格式命名的变量, * 比如下面这样的变量,J ...
随机推荐
- Flask Web开发实战(入门、进阶与原理解析)
URL重定向 错误响应 > 如果你想手动返回错误响应,可以使用Flask提供的abort()函数. XML 上下文全局变量 [](https://img2018.cnblogs.com/blog ...
- web 服务器安全防范
apache 关闭目录 配置文件:安装目录/Apache/conf/httpd.conf <Directory /> #默认就会把/ 的目录暴漏出来:关闭方法: Options -Inde ...
- 洛谷 P3332 BZOJ 3110 [ZJOI2013]K大数查询
题目链接 洛谷 bzoj 题解 整体二分 Code #include<bits/stdc++.h> #define LL long long #define RG register usi ...
- 洛谷 P2486 [SDOI2011]染色(树链剖分+线段树)
题目链接 题解 比较裸的树链剖分 好像树链剖分的题都很裸 线段树中维护一个区间最左和最右的颜色,和答案 合并判断一下中间一段就可以了 比较考验代码能力 Code #include<bits/st ...
- HDU6393(LCA + RMQ + 树状数组) n边图,两点最短距离 , 修改边权
这道题的进阶版本 进阶版本 题意: 一个n个点,n条边的图,2中操作,1是将某条边的权值更改,2是询问两点的最短距离. 题解: 由于n个点,n条边,所以是树加一个环,将环上的边随意取出一条,就是1颗树 ...
- nginx(一)- 初识
前言 这里呢,开始我的nginx学习记录.关于nginx是什么?为什么?有什么好处?我就不说了,说的肯定没有网上其他人说的那么细.我在这里就记录我自己学习nginx的过程.只说怎么做,让我们快速用起来 ...
- 转 C#对多个集合和数组的操作(合并,去重,判断)
在开发过程中.数组和集合的处理是最让我们担心.一般会用for or foreach 来处理一些操作.这里介绍一些常用的集合跟数组的操作函数. 首先举例2个集合A,B. List<int> ...
- linux 下安装 mysql 并配置 python 开发环境
1.安装 mysql ,安装过程中将提示设置 root 用户的密码,默认可以设置为 rootadmin . $ sudo apt-get install mysql-server 2.安装 mysql ...
- 中文输入法无法在 QtCreator(Linux) 中输入汉字
中文输入法无法在 QtCreator(Linux) 中输入汉字 环境 system: Deepin 15.7 Qt Creator 4.7.0 (GCC 5.3.1) 解决方法 下载 fcitx-qt ...
- Bootstrap table使用知识-转
http://www.cnblogs.com/landeanfen/p/5005367.html 官方文档:http://bootstrap-table.wenzhixin.net.cn/zh-cn/ ...