讲师回答 / Bosn
红色区域内,try没有对应的catch,所以throw出去的Error("oops")抛了出去,在此之前不管是否抛异常都要先走finally,所以先输出"finally", 而后外层的try/catch捕获到这个Error("oops"),所以第二条输出"outer" "oops"
2015-03-04
讲师回答 / Bosn
在视频里其实介绍过,如果直接写{}.toString, {}会被解释为块儿,类似while (true) {}这里的{}.而这里需要的是一个对象字面量,所以要这样写:({}).toString.apply或者var result = {}.toString.apply...都可以。
2015-02-26
讲师回答 / Bosn
我已经尽可能的用大量例子去讲解了,并且也配合了对比。如果还是看不懂的话,建议找一些书籍,或网上搜索一些材料再仔细看看。如果还有问题,具体问题具体分析。“有些模糊”这种描述,没办法给你回答。
2015-02-24
讲师回答 / Bosn
直接调用对象的toString方法一般都没有什么特别意义。需要自己去做处理。例如:var student = { 'age' : 23, 'name' : 'Bosn', 'toString' : function() {console.log(this.age, this.name);}};student.toString(); // 23 "Bosn"
2015-02-17
已采纳回答 / Python工程师
在程式设计的型别系统中,数据类型(Data type)是用来约束数据的解释。在编程语言中,常见的数据类型包括原始类型(如:整数、浮点数或字符)、多元组、记录单元、代数数据类型、抽象数据类型、参考型别、类别以及函式型别。数据类型描述了数值的表示法、解释和结构,并以算法操作,或是物件在内存中的储存区,或者其它储存装置。
2015-02-11
讲师回答 / Bosn
Array.prototype.func这个属性不存在呀call方法是任何函数对象都有的,因为函数对象原型链上都有Function.prototype对象,该对象提供了call/apply/bind这些方法。
2015-02-10
讲师回答 / Bosn
不使用new调用函数,就是正常的函数调用,return值作为返回值,若没有return语句则返回undefined。<...code...>使用new调用函数,函数将作为构造器,调用时函数内的this会指向以foo.prototype为原型的对象,若无return语句或return返回的不是对象,则将this作为返回值。<...code...>
2015-02-06