关于js函数,方法,对象实例的一些说明

朋友们大家好,好久没有更新文章了,最近正好有空就想着写点什么吧,加上这段时间总是能听到一些朋友们问关于js函数,方法,对象实例到底有什么区别这个问题,所以今天就献丑来简单说明一些吧!

其实这些主要都是一些概念上的东西,在这里还是推荐大家多看看诸如《JavaSript权威指南》,《JavaScript高级编程》之类的书籍,当然这些概念如果用代码写出来我相信大家也都还是能够知道的,所以下面我就用文字和代码举一些简单的例子进行说明:

函数:简单的说函数就是,使用function关键字定义(或声明)的表达式语句;他有两种写法,一种是函数定义表达式:

var aa = function(){....};

另一种是函数声明语句:

function aa(){....};

这两种写法在调用时基本一样,但是这两种写法还是有一些区别的:

1.js脚本在运行时会把函数声明语句提升到所在作用域的最顶端,也就是说你在底下声明的函数在其声明之前也可以调用,即可以先调用后声明,但函数定义表达式则必须先定义后调用;

2.正是函数声明语句的作用域提升所以最好不要在if/for/while等语句内使用函数声明语句,因为这些语句没有块级作用域;

函数说完了,接下来说说方法:

方法:所谓方法其实就是当对象的属性是一个函数时,这个函数就是该对象的方法;简而言之方法就是,作为对象属性的函数!

//定义一个对象bb
var bb = {
    cc : function(){
        ...........
    }
}

看上面这段代码,函数cc在这里就是对象bb的方法,我们一般叫做bb的cc方法!

看到这里我想大家应该能够明白函数跟方法的区别了吧:

方法也是函数,但只有作为对象属性的函数才是方法!

有点绕啊,但是大家应该都能看的明白!

接着我们在来说说实例:

实例是怎么回事了,其实简单点说,实例就是通过new关键字调用的对象!

var obj = new Object; //这里对象obj就是一个对象实例;
var arr = new Array; //这里的arr就是一个数组实例;

上面是两个简单的例子;下面我们可一个稍微复杂点的:

//创建一个简单的information
var information = function(){
    this.name = ‘‘;
    this.setName = function(name){
        this.name = name;
    }
    this.getName = function(){
        alert(this.name);
    }
}
//创建information类的实例
var myName = new information;//这里没有参数,可以省略小括号
myName.setName(‘平凡公子‘);//调用实例的setName方法;
myName.getName() //调用实例的getName方法;

上面这个例子可以看出实例,方法,以及实例方法;information是一个对象(函数也是对象),myName是information对象的实例,setName和getName是对象方法,在这里它们也是实例对象myName的方法!

总结:方法是一个作为对象属性的函数,实例是通过关键字new来调用的函数(对象),实例对象是对对象的一个引用,它具有对象的所有方法!

好吧,说到这里本文也就该结束了,可能由于语言水平问题有些地方没有表达清楚,还请各位看官海涵!如有不明白的地方可以留言!

本文由: 平凡公子原创发布,欢迎阅读及转载!

时间: 2024-10-11 23:18:28

关于js函数,方法,对象实例的一些说明的相关文章

JS函数和对象(一)

在本文章中,将对JS中的函数和对象进行一些讲解,不对之处还请之处 一.JS中的函数 1.1无参函数 其形式如下代码所示 function box(){ alert("我是一个函数,只有被调用才会执行"); } box(); 运行结果如图1.1 图1.1 1.2有参函数 有参函数其形式如下 function box(name,age){ alert("你的名字是"+name+",年龄为"+age); } box("李大宝",22

js函数方法

/** * call()和apply * 这两个方法都是函数对象的方法,需要通过函数对象来调用 * 当对函数调用call()和apply()都会调用函数执行 * 在调用call()和apply()可以将一个对象指定为第一个参数 * 此时对象将会成为函数执行的this * call()方法可以将实参在对象之后一次传递 * apply()方法需要将实参封装到一个数组中统一传递 * * */ 原文地址:https://www.cnblogs.com/lw1998/p/11404215.html

iframe调用父页面js函数 方法 元素

在一个页面中添加iframe,但是有时需要与父页面进行通信,传递参数. 网上总结有以下方法: 一.iframe标签中   src属性传参 <iframe src="test.jsp?id=xxx">    通过get方法,添加在页面后面传递参数,如上的“id” 二.iframe调用父页面html元素 在iframe中,通过“window.parent.document.getElementById()” ,即可访问父页面中的元素 三.iframe调用父页面函数  windo

JS函数传参实例应用:多组图片切换实例

之前的博客有一个图片切换的例子,实现了简单轮播图的点击切换的案例,今天就说一下多组轮播切换,前提是布局差不多,通过函数传参的形式减少代码应用,但是同时还能实现效果.先来看一下之前那个例子的实现图片: 那么今天我来实现两组这样的图片切换,通过传参数来实现,这样分可以减少js代码: <div class="box" id="pic1"> <img src="" /> <span>数量正在加载中--</span

JS函数传参实例应用,多组图片切换实例

<div class="box" id="pic1"> <img src="" /> <span>数量正在加载中……</span> <p>文字说明正在加载中……</p> <ul></ul> </div> <div class="box" id="pic2"> <img src=&qu

JS中的对象和方法简单剖析

众所周知,在js中对象就是精髓,不理解对象就是不理解js. 那么什么事js中的对象呢? 在js中,几乎一切皆对象: Boolean ,String,Number可以是对象(或者说原生数据被认作对象): Dates ,Maths,Regexps,Arrays,Funcitons,当然Objects,这些都是对象: JS中,所有值,除了原生值,都是对象:这些原生值包括:strings,numbers('3.14'),true,false,null和undefined 对象是包含变量的变量,js变量可

AS与JS相互通信(Flex中调用js函数)

Flex中As调用Js的方法是:      1.导入包 (import flash.external.ExternalInterface;)      2.使用ExternalInterface.call("Js函数名称",参数)进行调用,其返回的值就是Js函数所返回的值 Js调用As的方法是:      1.导入包 (import flash.external.ExternalInterface;)      2.在initApp中使用ExternalInterface.addCal

js函数的定义

js函数可以通过以下三种方法定义 1.使用关键字Function定义函数. 2.可以通过声明定义. 3.也可以是一个表达式. 1.关键字Function定义(构造函数) var myFunction = new Function('a', 'b', 'return a * b'); var x = myFunction(4, 3); 实际不必使用构造函数(在javascript中很多时候需要避免使用new关键字,以及这种方式会导致解析两次代码,影响性能.第一次解析常规的JavaScript代码,

vs2010中关于HTML控件与服务器控件分别和js函数混合使用的问题

此文档解决以下问题: 1.在.cs文件中如何访问html控件? 在html控件中添加属性runat="server"即可 2.在html控件中,如何调用js函数? 在html控件中,利用事件绑定js函数即可,如 onclick="showJs()" 3.在.aspx文件的js中,如何调用.cs文件自定义的变量或方法? 使用<%=变量或方法%>调用即可 4.在.cs文件中如何调用js函数? 通过语句this.Page.ClientScript.Regist