【javascript笔记】js构造器<六>
来源:互联网 发布:php cors跨域 编辑:程序博客网 时间:2024/05/03 03:49
原出处 请点击: click me
今天无意看到了一个题目,谁知被难住了
look at this
var fun = function(){ this.name = 'peter'; return { name: 'jack' };}var p = new fun();//请问p.name是:
第二题
var fun = function(){ this.name = 'peter'; return 'jack'; }var p = new fun();//请问p.name是:
每个函数都有返回值,如果使用了return语句,则返回return后跟的值,如果没有使用return,则默认返回undefined.
特别的,如果这个函数是构造函数,则默认返回this对象,如果构造函数内使用了return语句,并且return后跟的是一个对象,则这个构造函数返回的是这个对象,这里指代的对象是toString.call(obj)==’[object Object]’ . 否则返回this.
所以1题中的p = {name: ‘jack’},而2题中的p = {name: ‘peter’}.
总结: 构造器(以 new FuncName形式) 得到的结果必然是个object. 请看这里mdn关于构造器的返回值介绍:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Operators/this#构造函数中的_this
0 0
- 【javascript笔记】js构造器<六>
- JavaScript高级程序设计(第2版) 学习笔记:(六)js基于构造函数与原型的继承
- javascript基础笔记之(六)js数组
- JavaScript笔记六:BOM
- Javascript 学习 笔记六
- JavaScript学习笔记六
- javascript笔记(六)(Date)
- javascript笔记(六)
- JavaScript学习笔记(六) 数组字面量和Array()构造方法
- javascript 学习笔记(六)
- javaScript学习笔记(六)
- PackageManagerService学习笔记六-构造函数
- 六、(2)继承[js笔记]
- Node.js笔记六:单元测试
- JS构造函数学习笔记
- js构造函数学习笔记
- js学习笔记(构造器对象、原型对象)
- JavaScript笔记-js基础
- Xcode中的常用快捷键
- 11g RAC GI root.sh
- Maven Windows上安装过程
- Nginx负载均衡+tomcat+session共享
- hadoop namenode 格式化问题
- 【javascript笔记】js构造器<六>
- constexpr讲解--C++11
- UI开发中Button基本方法
- Micheal Nielsen's神经网络学习之二
- UILabel 多行高度自适应 计算高度存在的 坑
- 蓝懿ios技术交流和心得分享16.1.14
- java学习笔记03——核心技术
- PHP“Cannot use object of type stdClass as array”
- extjs Post方法提交json格式的数据到php