JavaScript typeof function()的注意事项

首先,上一段代码:

var f = function g()
            {
                return 23;
                };
            console.log(typeof g);        //输出undefined
            //console.log(typeof g());    //没有输出  显示错误  “g”未定义
            console.log(typeof f);        //输出function
            console.log(typeof f());    //输出number

 

这里的g确实没有这种写法,输出undefined也是情有可原

 

对于下面两句话,我的理解是

f是函数,然后给f加一对小括号,即f(),就代表函数执行后返回的值。

这一点,我想可以从JavaScript函数的自调用执行来看的话,是可以解释的通的。

个人观点,欢迎留言讨论。

console.log(typeof f);        //输出function
            console.log(typeof f());    //输出number

时间: 2024-12-28 22:07:33

JavaScript typeof function()的注意事项的相关文章

JavaScript typeof运算符和数据类型

// js有6种数据类型:Undefined.Null.Boolean.String.Number.Object //(01)typeof console.log(typeof undefined); //undefined console.log(typeof null); //object :特殊1 console.log(typeof true); //boolean console.log(typeof ''); //string console.log(typeof 0); //num

JavaScript中Function函数与Object对象的关系

函数对象和其他内部对象的关系 除了函数对象,还有很多内部对象,比如:Object.Array.Date.RegExp.Math.Error.这些名称实际上表示一个 类型,可以通过new操作符返回一个对象.然而函数对象和其他对象不同,当用typeof得到一个函数对象的类型时,它仍然会返回字符串 "function",而typeof一个数组对象或其他的对象时,它会返回字符串"object".下面的代码示例了typeof不同类型的情况: 以下是引用片段: alert(ty

javascript typeof用法小测

<html xmlns="http://www.w3.org/1999/xhtml"> <head>     <title></title>     <script type="text/javascript">                                     function show(){                 //typeof后跟参数,返回的是表示该参数类型的字符串

JavaScript typeof, null, 和 undefined

JavaScript 数据类型 在 JavaScript 中有 5 种不同的数据类型: string number boolean object function 3 种对象类型: Object Date Array 2 个不包含任何值的数据类型: null undefined 例子: typeof "John"                 // 返回 string typeof 3.14                   // 返回 numbertypeof NaN      

细说javascript typeof操作符

细说javascript typeof操作符 typeof定义 typeof是一元运算符,用来返回操作数类型的字符串.下面是ECAMScript5.1关于typeof的标准定义: NOTE:上面表格标红处应为“object”. typeof疑惑 Value Class Type ------------------------------------- null null object "foo" String string new String("foo") St

javascript中function和object的区别,以及javascript如何实现面向对象的编程思想.

1 <!DOCTYPE html> 2 <html xmlns="http://www.w3.org/1999/xhtml"> 3 <head> 4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> 5 <title></title> 6 <script language="

JavaScript 之 function函数及参数arguments

JavaScript用function关键字声明函数,可以用return返回值,也可以没有返回值. 建议:要么统一有返回值,要么统一都没有返回值,这样调试代码方便. 函数定义格式: function functionName(参数){ //函数体内 } 定义函数的时候,参数可以写,也可以不写,Javascript没有限制传递参数的个数,也不介意传入参数的数据类型. 在函数体内可以通过arguments 对象来访问参数数组,从而获取传递给函数的每一个参数. arguments.length:参数个

javascript的Function 和其 Arguments

http://shengren-wang.iteye.com/blog/1343256 javascript的Function属性:1.Arguments对象2.caller 对调用单前函数的Function的引用,如果是顶层代码调用, 则返回null(firefox返回undefined). 注:只有在代码执行时才有意义3.length 声明函数是指定的命名参数的个数(函数定义是,定义参数的个数)4.prototype 一个对象,用于构造函数,这个对象定义的属性和方法 由构造函数创建的所有对象

JavaScript获取Function的名字

如何获取JavaScript中Function的名字是一个很基本的问题.可以通过将function转化成字符串,用substring取它的名字,或者使用ECMAScript 6中的Function.name的支持.此属性只有在IE下有可能不兼容.详见MDN. 关于从字符串中获得其名字的方法如下 (转自stackoverflow): function functionName(fun) { var ret = fun.toString(); ret = ret.substr('function '