首页 > 代码库 > javascript 关于函数的返回值
javascript 关于函数的返回值
在javascript中根据调用方式的不同返回的内容也不同
1. 以函数的形式调用
当以函数的形式调用时, 返回值和函数定义时的 ruturn 有关, return的是数字就number类型, return字符串就是string类型, return 一个函数就得到Function类型, 总之return什么就得到什么.
2. 以new操作符调用函数
function A() { this.name = "Tom"; this.age = 23;}var a = new A();
这是典型的创建对象的方式, 但如果给这个A函数添加一个return 会是什么结果呢? 这里给出两种特殊的情况, 1.返回一个对象, 2. 返回一个 函数
function A() { this.name = ""; return { age:23 };}
var a = new A();
这里的a.constructor是Object 说明他是通过 return 得到值的, 而不是通过new 得到的. 因为通过new得到的话 a.constructor 是 A
function A() { this.name = ""; return function () { }}var a = new A();
这里的a是function类型, 而不是objiect 类型.说明new 也没有起到作用.
3. 以call 和 apply 的方式调用
这种方式的调用结果和以函数的形式调用的结果一样.
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。