1、使用 strict 模式
在一个作用域(包括函数作用域、全局作用域)中,可以使用
"use strict";
来开启 strict 模式。
2、缩进
用 Tab 键进行代码缩进,以节约代码大小,使用4个空格的宽度来进行缩进(JSLint 建议)。
3、符号
1) 大括号
与语句放同一行,放于最后面;仅有一行语句,也使用大括号:
if (true) {
//true
} else {
//false
}
while (true) {
//alert(1);
}
2) 空格
在逗号、分号、冒号后加空格
在操作符前后加空格
在大括号开始符之前
在大括号结束符和 else、while 或 catch 之间
在 for 的各个部分
如:
var a = [1, 2, 3];
var obj = {
name: 'name',
value: 'value'
};
for (var i = 0; i < 10; i++) {}
function func(a, b, c) {}
c = a + b;
if (a && b || c) {
//if
} else {
//else
}
try {
//try
} catch(err) {
//catch
}
3) 所有语句结束后,使用 ; 号结束
4、命名
对象:使用驼峰式,如:MyClass
方法、变量:使用混合式,如:getName(), myName
常量:大写加下划线,如:MY_NAME
5、单一 var 模式
只使用一个 var 在函数顶部进行变量声明,作用如下:
1) 提供一个单一的地址已查找到函数需要的所有局部变量
2) 防止出现变量在定义前就被使用的逻辑错误
3) 帮助牢记要声明变量,尽可能少地使用全局变量
4) 更少的编码
function func() {
var a = 1,
b = 2,
sum = a + b,
obj = {
name: 'name',
value: 'value'
},
$btn = $('#btn');
//函数体
}
6、循环
1) for 循环
var i, arr = [];
for (i = arr.length; i--;) {
//arr[i];
}
注:
for (var i = 0; i < document.getElementsByName().length; i++) {
//document.getElementsByName()[0];
}
这种方式每次对 i 进行长度比较的使用对会进行 document 的查询,而通常 DOM 操作是非常耗时的。
2) while 循环
var arr = [],
i = arr.length;
while (i--) {
//处理
}
3) for-in 循环
var i,
hasOwn = Object.prototype.hasOwnProperty;
for (i in man) {
if (hasOwn.call(man, i)) { //过滤
console.log(i, ':', man[i]);
}
}
7、switch 选择
switch (num) {
case 0:
//do something
break;
case 1:
//do something
break;
...
default:
//do default
}
建议使用:
var obj = {
'0': function() {
//do somethins
},
'1': function() {
// do somethis
}, ...
}
if (obj.hasOwnProperty(num)) {
obj[num]();
} else {
//do default
}
8、使用 parseInt() 的数值约定
1) 每次都具体指定进制参数:
var month = '09', day = '08'; month = parseInt(month, 10); //不加进制参数便会转换为八进制 day = parseInt(day, 10);
2) 其他常用的将字符串转换为数值的方法:
+'08';
Number('08');
9、字面量模式
不建议使用构造函数来定义:
// built in constructors (avoid)
var o = new Object();
var a = new Array();
var re = new RegExp('[a-z]', 'g');
var s = new String();
var n = new Number();
var b = new Boolean();
throw new Error('message');
建议使用更优的字面量模式:
// literals and primitives (prefer)
var o = {};
var a = [];
var re = /[a-z]/g;
var s = '';
var n = 0;
var b = false;
throw {
name: 'Error',
message: 'message'
}
10、其他
1) 变量内的简写单词如果在开头则全小写:xmlDocument,如果不在开头则全大写:loadXML
2) 变量必须是有意义的英文,禁止拼音
js,编码约定,编码规范
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
RTX 5090要首发 性能要翻倍!三星展示GDDR7显存
三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。
首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。
据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。
更新日志
- 小骆驼-《草原狼2(蓝光CD)》[原抓WAV+CUE]
- 群星《欢迎来到我身边 电影原声专辑》[320K/MP3][105.02MB]
- 群星《欢迎来到我身边 电影原声专辑》[FLAC/分轨][480.9MB]
- 雷婷《梦里蓝天HQⅡ》 2023头版限量编号低速原抓[WAV+CUE][463M]
- 群星《2024好听新歌42》AI调整音效【WAV分轨】
- 王思雨-《思念陪着鸿雁飞》WAV
- 王思雨《喜马拉雅HQ》头版限量编号[WAV+CUE]
- 李健《无时无刻》[WAV+CUE][590M]
- 陈奕迅《酝酿》[WAV分轨][502M]
- 卓依婷《化蝶》2CD[WAV+CUE][1.1G]
- 群星《吉他王(黑胶CD)》[WAV+CUE]
- 齐秦《穿乐(穿越)》[WAV+CUE]
- 发烧珍品《数位CD音响测试-动向效果(九)》【WAV+CUE】
- 邝美云《邝美云精装歌集》[DSF][1.6G]
- 吕方《爱一回伤一回》[WAV+CUE][454M]