`

JS函数

 
阅读更多

(一)   、函数的表示写法
函数是 JS 里很神奇的一位童鞋。那么如何创建一个函数呢?简单来说有下面几种形式:

1、 定义式

function a() {}

2、 声明式

var a = function() {}; // 把一个匿名函数赋给一个变量

3、 构造函数

var a = new Function(); // Function 来实例化一个对象

(二)   、函数按照功能分,可以分为:

1、 普通函数

普通函数就是一般方法的封装跟重用,如上面的 a

2、 构造函数;

构造函数用来实例化一个对象,像是一道菜谱,按照这个菜谱炒了一盘菜;定义构造函数,有个不成文的规定,就是函数名大写,如: var A = function() {};

3、 对象方法 ;

用来定义一个对象的方法,比如一个 Person 对象 var Person = {}; 需要定义一个 getName 方法,如: Person.getName = function() {};

(三)   、函数属性

1、 函数之 constructor

每个函数都有一个 constructor 属性,这个属性指向创建自己的函数;如上文中的 a 函数,他的 constructor 指向谁呢?谁创建它指向谁呗? 那是谁创建的呢?在 firebug 等控制台上输入 a.constructor ,显示 Function() 。为什么是 Function 呢?其实,无论用上面 的哪种形式创建函数,在后台都会使用 new Function() 形式创建。那 Function constructor 指向谁呢?很意外,还是 Function ?为什么?由于 Function ECMAScript 规定的本地对象,独立于宿主环境,这说明只要打开宿主环境(如:浏览器)这个 Function 就可以用了。

2、 函数之 prototype

constructor 一样, prototype 也是每个函数默认就具有的属性,这个属性指向 prototype 对象,而 prototype 里面居然也有一个 constructor 属性,指向了这个函数。

(四)   、构造函数

构造函数可以实例化一个对象:如: var Person = function() {}; var p = new Person(); 这个 p 就是通过 Person 创建的,那么它的 constrctor 指向了 Person ,而其内部还有个 __proto__ 属性,在 firefox chrome 等浏览器下可以直接访问这个属性,这个属性指向了 prototype 对象。

(五)   实例、原型、构造函数 之间的关系

实例是通过构造函数创建,但是跟构造函数没有直接关系,其内部的 __proto__ 属性指向了 prototype ,而 prototype (原型)的 constructor 指向了构造函数,构造函数的 prototype 属性指向了原型( prototype ),所以说实例跟构造函数都是通过 prototype 发生了关系。

 

分享到:
评论

相关推荐

    JS 函数式编程指南 PDF

    总结而言,JS函数式编程指南为读者提供了一种途径,借助于JavaScript这种广泛使用的编程语言,去理解和掌握函数式编程的核心概念和实践技巧。这本指南不仅涵盖了函数式编程的基础理论,还详细介绍了如何在实际开发中...

    C#与JAVASCRIPT函数的相互调用 C#调用JAVASCRIPT函数的调用 JAVASCRIPT调用C#函数的调用

    C#与JAVASCRIPT函数的相互调用 C#调用JAVASCRIPT函数的调用 JAVASCRIPT调用C#函数的调用

    JavaScript函数参数使用带参数名的方式赋值传入的方法

    传统的JavaScript函数参数传递是基于位置的,即按照参数在函数定义中的位置来接收值。然而,这种方式在参数较多时容易出错,特别是当参数顺序不正确或者缺失时。为了解决这一问题,JavaScript引入了一种更加直观的...

    JavaScript函数式编程.pdf

    不过,由于【标题】中提供了文档的名称——"JavaScript函数式编程.pdf",我可以根据这个名称扩展出关于JavaScript函数式编程的知识点。 JavaScript函数式编程的知识点非常丰富,涉及很多方面的内容,下面将详细介绍...

    javascript指南和函数式编程

    而《JavaScript函数式.zip》可能是一份关于JavaScript函数式编程的资料集合,函数式编程是一种编程范式,强调使用函数和避免改变状态。其中可能涵盖以下知识点: 1. **纯函数**:理解纯函数的定义,即给定相同的...

    javascript函数式编程

    JavaScript函数式编程是一种编程范式,它强调将计算视为数据处理的过程,并且重视函数作为第一类公民,即函数可以作为变量赋值、作为参数传递、作为返回值返回。这种编程风格在JavaScript中尤其常见,因为它提供了...

    npapi插件中插件主动调网页js函数

    标题中的“npapi插件中插件主动调网页js函数”指的是NPAPI(Netscape Plugin Application Programming Interface)插件如何在运行时调用网页中的JavaScript函数。NPAPI是一种允许浏览器加载外部代码来扩展功能的插件...

    Java代码调用HTML5中的JS函数算法

    Java可以设置一个端点,接收来自JavaScript的Ajax请求,然后在响应中包含调用JS函数的命令。 3. **HTML5的Web Workers**:Web Workers允许可后台运行的脚本,从而避免阻塞用户界面。Java可以通过HTTP请求触发Web ...

    javascript函数式编程 underscore.js

    JavaScript函数式编程是一种编程范式,它强调使用函数来组织代码,将计算视为一系列惰性求值的操作。Underscore.js是一个轻量级的JavaScript实用库,它为开发者提供了大量函数式编程工具,使得在JavaScript中实践...

    qt 调用javascript函数 带参数

    本篇文章将深入探讨如何在Qt中调用JavaScript函数并传递参数,以实现更丰富的功能。 首先,Qt的Webkit模块是实现这一目标的关键。Qt Webkit是一个基于WebKit引擎的组件,它允许Qt应用渲染网页内容,并与网页进行...

    QT和网页中的JavaScript函数进行相互调用的实现

    - 这里的回调函数用于处理JavaScript函数的异步返回结果,如果需要同步获取结果,可以使用`QWebEngineScript`来注册一个全局JavaScript对象,然后通过该对象调用JavaScript函数。 2. **JavaScript调用QT函数**: ...

    javaScript函数式编程

    本书专门介绍JavaScript函数式编程的特性。 全书共9章,分别介绍了JavaScript函数式编程、一等函数与Applicative编程、变量的作用域和闭包、高阶函数、由函数构建函数、递归、纯度和不变性以及更改政策、基于流的...

    javascript 函数式编程

    JavaScript 函数式编程是一种编程范式,它将函数视为第一类公民,允许它们作为其他函数的参数、返回结果,甚至可以存储在变量中。在JavaScript中,函数式编程提供了更高级别的抽象,使得代码更简洁、可读性更强,...

    js函数库——打包上传

    JavaScript函数库是Web开发中不可或缺的一部分,它们提供了一系列预定义的函数和工具,帮助开发者更高效、便捷地处理常见的编程任务。"js函数库——打包上传"这个主题涉及到的主要是如何整理、打包和上传JavaScript...

    JavaScript函数式编程

    本书专门介绍JavaScript函数式编程的特性。 全书共9章,分别介绍了JavaScript函数式编程、一等函数与Applicative编程、变量的作用域和闭包、高阶函数、由函数构建函数、递归、纯度和不变性以及更改政策、基于流的...

    JS 函数式编程指南

    JavaScript(简称JS)函数式编程是一种编程范式,它强调将计算视为函数的组合,而不是状态的变化或指令的序列。这种编程风格可以帮助开发者编写出更简洁、可读性更强、易于测试和维护的代码。本指南将深入探讨JS函数...

    iframe子父页面调用js函数示例.docx

    "iframe子父页面调用js函数示例" 在实际项目中,iframe 子父页面调用 js 函数是非常有用的。下面是一个示例,演示如何在 iframe 子页面中调用父页面的 js 函数,以及如何在父页面中调用 iframe 子页面的 js 函数。 ...

    JS函数式编程-Functional JavaScript

    标题《JS函数式编程-Functional JavaScript》涉及的知识点涵盖了JavaScript函数式编程的基本概念、重要性以及实际应用。在这一领域中,函数被当作一等公民,即它们可以被当作值一样传递和使用。函数式编程(FP)是一...

    JS函数库(很详尽的哦)

    JavaScript函数库是Web开发中不可或缺的一部分,它们提供了一系列预定义的函数和方法,极大地提高了开发效率,降低了代码的复杂性。这些库通常包含了各种实用工具、动画效果、数据处理、事件处理、AJAX交互等功能,...

Global site tag (gtag.js) - Google Analytics