【读书笔记】:《编写可维护的JavaScript》第03章 语句和表达式

第03章 语句和表达式

所有的块语句都应当使用花括号

  • if
  • for
  • while
  • do…while…
  • try…catch…finally

3.1 花括号的对齐方式

推荐这种写法,左花括号放置在块语句的第一句代码末尾:

if (condition) {
    doSomething();
} else {
    doSomethingElse();
}

3.2 块语句间隔

推荐在圆括号前后各加一个空格

if (condition) {
    doSomething();
}

3.3 switch语句

3.3.1 缩进

case 语句相对于switch缩进一个层级。
每个case语句之间用空行分开

switch (num1) {
case 1:
			someShing1();
			break;

case 2:
			someThing2();
			break;

default:
        someThing3();
}
3.3.2 case语句的“连续执行”

根据case语句的“连续执行”特性,可以书写下面的代码:

switch (num1) {
case 1:
case 2:
			someShing1();
			break;

case 3:
			someThing2();
			break;

default:
        someThing3();
}
3.3.3 是否使用default

在添加了注释的情况下,可以省略default。

switch (num1) {
case 1:
			someShing1();
			break;

case 2:
			someThing2();
			break;

// 没有default
}

3.4 for循环

最基本的用处就是遍历数组。
可以使用break中止循环
不要使用continue语句。使用if条件句进行代替,这样代码更容易识别

3.5 for-in循环

for-in也是循环,只不过用来遍历对象的属性

var obj={
    	title:"我是标题",
    	name:"我是名字"
}

for(var i in obj){
    console.log(i + ":" + obj[i]);
}

控制台输出:
title:我是标题
name:我是名字

for-in循环有一个问题,就是它不仅遍历对象的实例属性(instance property),同样还遍历从原型继承来的属性。这时最好使用hasOwnProperty()方法为for-in循环过滤出实例属性:

var obj

for(var i in obj){
    if (obj.hasOwnProperty(i)){
      	console.log(i + ":" + obj[i]);
    }
}

推荐一直使用hasOwnProperty(),除非需要想查找原型链

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值