写更好的JavaScript(2)
1.使用严格模式
严格模式是在ECMAScript5中引入,在ie10+才可以正常使用,chrome是没有问题的,只有坑爹的ie10是随着系统更新.使用严格模式在低版本浏览器上也是没问题,是不进行解析的.
说说为什么要使用严格模式呢:
- 可以消除不合理和不严谨的语法.避免出现怪异的问题
- 避免一些不安全的操作,会直接报错误的
加入严格模式的声明
function init() {
'use strict' //声明使用严格模式
msg = 'hello world!'; //报错
alert(msg);
}
var currentElement = '<p>1</p>';
delete currentElement; //在严格模式无法删除变量
function add(a, a) { //不允许形参名称重复
alert(a + a);
}
2.JavaScript编程风格
主要说大括号的起始位置主要有两种:
风格一以c/c#为代表
static IEnumerable<int> Power(int number, int exponent)
{
int result = 1;
for (int i = 0; i < exponent; i++)
{
result = result * number;
yield return result;
}
}
风格二以Java/JavaScript为代表
function add(a, b) {
alert(a + b);
}
在JavaScript中,要用第二种,是因为JavaScript在句末自动添加分号,避免出现怪异问题,Java转c#的人可能会出现这个问题,他们以为前后台要统一呢?
秋风
2016-06-10