为了账号安全,请及时绑定邮箱和手机立即绑定

JavaScript深入浅出

Bosn 资深架构师
难度中级
时长 5小时28分
学习人数
综合评分9.60
492人评价 查看评价
9.8 内容实用
9.5 简洁易懂
9.5 逻辑清晰

已采纳回答 / in23
this 指的是调用当前方法(函数)的那个对象,也就是说函数在谁那被调用,this就指的是谁function a() {       console.log(this);   }  var b  = {};  b.hehe = a;  b.hehe();  //这时候this指向b//常见的就是绑定事件 没有拥有者,直接调用,就指向windowfunction a() {       console.log(this);   }  a();  //this指向window

最赞回答 / feiger
首先会在student原型链上查找是否有LEGS_NUM属性,发现没有然后向上查找原型链上是否有LEGS_NUM属性,发现找到了然后赋值完成,调用hi方法时也是一样的程序首先在student原型链上查找,发现找到了就直接返回了,就不会向上查找了

已采纳回答 / feiger
视频中是get方法,obj是foo的实例,它本身是没有z属性的,当obj.z = 10赋值时程序发现obj并没有z这个属性,于是就像上查找foo的原型属性z,并且这个z的属性值是被get方法暴露出来的,是不能被改变的,只能通过set方法改变,你要obj的z能设置属性就要给z设置一个set方法就可以了,Object.definedProperty(obj, 'z', {set: function(val){return val}})

已采纳回答 / 慕粉丹哥
不行,我还是厚着脸皮再来一次。首先,nAdd是全局变量,用nAdd = n的方式是可以吧局部变量暴露出去的,如果nAdd是简单的基本类型,n的每一次变化都需要通过nAdd = n的方式赋值。第二个,关于n的作用域问题,这里nAdd的作用,形成闭包,局部变量n并不会在执行完result()后销毁而是继续保存在内存中。

已采纳回答 / 慕粉丹哥
只是让Student继承Person,让其拥有Person的方法,同时又拥有自己的私有方法。直接new Person(),将不会拥有Student里面的方法,如Student.learn()

最新回答 / yinyun
原理是一样的,js通过原型链实现继承,java通过类实现继承;js通过__proto__拿到父亲的引用,java通过super拿到父亲的引用。

已采纳回答 / 月影苍狼
能,在服务器端搭建nodejs环境,就可以用js做网站了

已采纳回答 / 慕粉1830452665
不等价,你希望通过索引访问数组中的元素,将字符串作为索引的话就会出问题。<...图片...><...图片...>

已采纳回答 / qq_灰色幽默_0
Student.prototype={y,2};  这行代码的意思是将prototype重新赋值,也就是说这行代码之后,student.prototype只有y属性,没有x了。所以新创建的类中也没有x属性,输出,自然是undefined。

最赞回答 / 不明真相的小白
JS是弱语言类型啊,它数组里存的值得类型可以是各种各样的。如var arr = [1,"a",[1,2]];

最赞回答 / 林金章
外层加上()或!或+是为了把函数声名变成函数表达式,防止函数被前置处理而剩下括号或者你省略名字的时候会报语法错误
课程须知
1.您至少学习了本站“JS入门”、“JS进阶”两门基础课程。 2.如您具备一定实践经验对学习有很大帮助。 3.如您没有脚本编程开发经验,学习过程有可能会受挫部分内容或示例代码,请“暂时略过不懂的部分,后面章节会阐述”,当然想透彻学习,还需大量实践来体会知识的内涵。
老师告诉你能学到什么?
结合实例,深入解析以下知识内容: 1. 数据类型、表达式和运算符、语句; 2. 对象、数组、变量、函数; 3. this、闭包和作用域; 4. OOP; 5. 正则与模式匹配。

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消