<script>
var aha = {
smoke:function(){
console.log('Smoking...');
//return undefined;
},
drink:function(){
console.log('Drink...');
//return undefined;
},
perm:function(){
console.log('Perm...');
//return undefined;
}
}
aha.smoke().drink().perm();
</script>
对象执行完第一个方法就会报错,因为方法执行完会隐式地返回undefined,而在undefined上并不存在drink这个方法或属性
我们可以通过设置对象方法的返回值,来实现对象方法的连续调用
<script>
var aha = {
smoke:function(){
console.log('Smoking...');
return this;
},
drink:function(){
console.log('Drink...');
return this;
},
perm:function(){
console.log('Perm...');
return this;
}
}
aha.smoke().drink().perm();
</script>