请问javascript内置Function问题?内置构造函数有Array(),String(),Number(),Object(),内置对象有Array,String,Number,Object请问这些内置对象是从内置函数里return返回出来的,还是用new创建出来引用对象的?第二个问题:function a(){}document.write (a.constructor)
为什么可以把a当做对象呢?a只是一个函数名啊,如果写成a().constructor为什么就不行?而Array().constructor就可以呢?a对象的构造函数是function Function(){}a为什么会是对象呢?a是一个函数名啊,Function()内置构造函数会构造出a函数名?不明白?
为什么可以把a当做对象呢?a只是一个函数名啊,如果写成a().constructor为什么就不行?而Array().constructor就可以呢?a对象的构造函数是function Function(){}a为什么会是对象呢?a是一个函数名啊,Function()内置构造函数会构造出a函数名?不明白?
解决方案 »
- jquery指定table某tr下动态添加tr
- 使用javascript 放大、缩小图片
- js中将两个时间的时间间隔转换成周数
- 请问谁知道facebook的弹出窗口的代码
- JavaScript 新手入门题。。。
- 高分求 DataList 绑定图片 可移动放大镜!!!
- 枯井进来,有问题请教.
- 页面上有N多个文本框是根据程序自动生成的所以个数不确定,名字的规则是param0,param1,param2.......请问怎么判断有几个文本框
- ****xmlhttp + servlet,URL中的参数在servlet中如何获得?*****
- 怎样实现图片框大小随着图片大小变动?
- 请问javscript函数问题?
- 无JAVASCRIPT编程基础,直接学JQUERY可以吗?
它们属于JavaScript原生对象,不属于你说的这两种方式。"为什么可以把a当做对象呢?"
参见开头所述"如果写成a().constructor为什么就不行? 而Array().constructor就可以呢? "
因为你的a未设置返回值,这时候它默认返回undefined,undefined是木有constructor属性的。Array函数返回数组对象,所以可以。"a为什么会是对象呢?a是一个函数名啊,Function()内置构造函数会构造出a函数名?不明白?"
参见:function 语句
声明一个新的函数。
function functionname([arg1 [, arg2 [,...[, argN]]]])
{
statements
}
参数
functionname
必选项。函数名。
arg1...argN
可选项。函数理解的参数列表、各个参数之间用逗号分开。
statements
可选项。一个或多个 JScript 语句。
因为a是个函数,所以他的构造器就是本地的Function对象,也就是说a是由Function构造出来的。为什么可以把a当做对象呢?a只是一个函数名啊,如果写成a().constructor为什么就不行?
正如2L所说Javascript中,函数都是对象.
而a()并不具备值,没有return回任何值。a().constructor:我觉得会首先调用a函数,由于它没有值,所以当然也就constructor参见:http://blog.csdn.net/kittyjie/archive/2009/07/26/4380918.aspx
一定会让你的头脑有种非常清醒的感觉