- xml - AJAX/Jquery XML 解析
- 具有多重继承的 XML 模式
- .net - 枚举序列化 Json 与 XML
- XML 简单类型、简单内容、复杂类型、复杂内容
澄清:
“JavaScript constructor”应该更恰本地写成“javascript constructor”,以强调所考虑的构造函数不仅是原生 JavaScript 语言的构造函数,如 Object、Array、Function 等,还包括 JavaScript 语言定义之外的其他构造函数但是对于浏览器来说是固有的,例如 XMLHttpRequest
,“JavaScript”这个词的意思是表示这些构造函数是使用 JavaScript 表达和访问的。
一些引用:
构造函数
Worker()
构造函数...”在修辞上,有对构造函数函数的引用,但不是构造函数对象!
(表面上,这是因为对象是函数,而函数是对象!
Why in JavaScript is a function considered both a constructor and an object?
更具体地说,对象,或者是 obj-eggs?,是,忽略文字实例,函数和函数的实例化是函数的对象实例。事实证明,功能是对象存在的基础是有争议的
7. Functions
先于
8. Working with Objects
在 MDN 文档中 JavaScript Guide .我反对第 8 节!它提供了使用构造函数和函数实例化创建对象所需的详细信息!)
为什么接口(interface) DOM 的构造函数不是函数?
javascript:
alert([
"using browser environment: \n"+window.navigator.userAgent,
Option, Image, Audio,
Storage, XMLHttpRequest, Worker, FileReader,
] . join("\n\n"));
向我们展示:
using browser environment:
Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.3) Gecko/20100423 Ubuntu/10.04 (lucid) Firefox/3.6.3[object Option]
[object Image]
[object Audio]
[object Storage]
[object XMLHttpRequest]
[object Worker]
[object FileReader]
但是……
javascript:
alert([
XPCNativeWrapper,
].join("\n\n"));
(产生
function XPCNativeWrapper() { [native code] }
)
和 JavaScript 语言 constructors是函数。
javascript:
alert([
"using browser environment: \n"+window.navigator.userAgent,
Array, Boolean, Date, Function,
Number, Object, RegExp, String,
Error, Iterator,
].join("\n\n"));
给我们:
using browser environment:
Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.3) Gecko/20100423 Ubuntu/10.04 (lucid) Firefox/3.6.3function Array() { [native code] }
function Boolean() { [native code] }
function Date() { [native code] }
function Function() { [native code] }
function Number() { [native code] }
function Object() { [native code] }
function RegExp() { [native code] }
function String() { [native code] }
function Error() { [native code] }
function Iterator() { [native code] }
最佳答案
首先:
Objects ARE functions
不,它们不是:
> a = function() {}
function () {}
> a instanceof Object
true
> b = {}
Object
> b instanceof Function
false
toString
方法(这是在进行字符串连接时调用的方法)不是获取对象信息的可靠方法。如果我使用 typeof
,我会得到以下结果:
using browser environment:
Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:5.0.1) Gecko/20100101 Firefox/5.0.1
function
function
function
object
function
function
function
所以你看,除了 Storage
之外,它们中的大多数,都是实际起作用的(为什么它不适用于 Storage
,我不知道不知道)。
另请记住,DOM 接口(interface)的行为可能与原生 JavaScript 对象不同。
另一方面,在 Chrome 中,toString
方法给出了这个:
[object Function]
[object Function]
[object Function]
function Storage() { [native code] }
function XMLHttpRequest() { [native code] }
function Worker() { [native code] }
function FileReader() { [native code] }
关于javascript - 为什么有些 JavaScript 构造函数不是函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6988064/
C语言sscanf()函数:从字符串中读取指定格式的数据 头文件: ?
最近,我有一个关于工作预评估的问题,即使查询了每个功能的工作原理,我也不知道如何解决。这是一个伪代码。 下面是一个名为foo()的函数,该函数将被传递一个值并返回一个值。如果将以下值传递给foo函数,
CStr 函数 返回表达式,该表达式已被转换为 String 子类型的 Variant。 CStr(expression) expression 参数是任意有效的表达式。 说明 通常,可以
CSng 函数 返回表达式,该表达式已被转换为 Single 子类型的 Variant。 CSng(expression) expression 参数是任意有效的表达式。 说明 通常,可
CreateObject 函数 创建并返回对 Automation 对象的引用。 CreateObject(servername.typename [, location]) 参数 serv
Cos 函数 返回某个角的余弦值。 Cos(number) number 参数可以是任何将某个角表示为弧度的有效数值表达式。 说明 Cos 函数取某个角并返回直角三角形两边的比值。此比值是
CLng 函数 返回表达式,此表达式已被转换为 Long 子类型的 Variant。 CLng(expression) expression 参数是任意有效的表达式。 说明 通常,您可以使
CInt 函数 返回表达式,此表达式已被转换为 Integer 子类型的 Variant。 CInt(expression) expression 参数是任意有效的表达式。 说明 通常,可
Chr 函数 返回与指定的 ANSI 字符代码相对应的字符。 Chr(charcode) charcode 参数是可以标识字符的数字。 说明 从 0 到 31 的数字表示标准的不可打印的
CDbl 函数 返回表达式,此表达式已被转换为 Double 子类型的 Variant。 CDbl(expression) expression 参数是任意有效的表达式。 说明 通常,您可
CDate 函数 返回表达式,此表达式已被转换为 Date 子类型的 Variant。 CDate(date) date 参数是任意有效的日期表达式。 说明 IsDate 函数用于判断 d
CCur 函数 返回表达式,此表达式已被转换为 Currency 子类型的 Variant。 CCur(expression) expression 参数是任意有效的表达式。 说明 通常,
CByte 函数 返回表达式,此表达式已被转换为 Byte 子类型的 Variant。 CByte(expression) expression 参数是任意有效的表达式。 说明 通常,可以
CBool 函数 返回表达式,此表达式已转换为 Boolean 子类型的 Variant。 CBool(expression) expression 是任意有效的表达式。 说明 如果 ex
Atn 函数 返回数值的反正切值。 Atn(number) number 参数可以是任意有效的数值表达式。 说明 Atn 函数计算直角三角形两个边的比值 (number) 并返回对应角的弧
Asc 函数 返回与字符串的第一个字母对应的 ANSI 字符代码。 Asc(string) string 参数是任意有效的字符串表达式。如果 string 参数未包含字符,则将发生运行时错误。
Array 函数 返回包含数组的 Variant。 Array(arglist) arglist 参数是赋给包含在 Variant 中的数组元素的值的列表(用逗号分隔)。如果没有指定此参数,则
Abs 函数 返回数字的绝对值。 Abs(number) number 参数可以是任意有效的数值表达式。如果 number 包含 Null,则返回 Null;如果是未初始化变量,则返回 0。
FormatPercent 函数 返回表达式,此表达式已被格式化为尾随有 % 符号的百分比(乘以 100 )。 FormatPercent(expression[,NumDigitsAfterD
FormatNumber 函数 返回表达式,此表达式已被格式化为数值。 FormatNumber( expression [,NumDigitsAfterDecimal [,Inc
我是一名优秀的程序员,十分优秀!