详解JavaScript函数对象


Posted in Javascript onNovember 15, 2015

函数

函数是由事件驱动的或者当它被调用时执行的可重复使用的代码块。

function One(leve , leve){
  //code
  return leve+leve
 }

注释:

形参不需要加上类型;

return语句为可选,没有return语句的函数返回undefined; 

局部变量与全局变量

在函数内声明:局部变量

在函数外声明:全局变量

向一个新变量名赋值时并没有使用var:这个变量会变为新的全局变量

函数可以作为值

形式1:

function init(){
  alert("One")
 }
 window.onload = init;

形式:

window.onload = function(){
  alert("One");
 }

注:以上两种方式,都能让浏览器提示:One。

对象

JavaScript 中的所有事物都是对象:字符串、数值、数组、函数,此外,JavaScript 允许自定义对象。 

对象的引用

将一个对象赋至变量时,这个变量会包含这个对象的一个引用,而不是对象本身。

调用一个函数传入对象时,实际上是只传递了对象引用(拷贝一份引用副本,传给形参,指向对象,即两个引用指向了同一对象)

创建对象

var dog = {
  name : "myDog",
  weight : ,
  bark :function(){
   alert("woof!");
  } 
 }
 dog.bark();

注:每一个属性(除了最后一个)后都要有“,”。

构造函数构造对象

function Dog(name,weight){
  this.name = name;
  this.weight = weight;
  this.bark = function(){
   if(this.weight > ){
    alert(this.name + "Woof!");
   }else{
    alert(this.name + "Yip!");
   }
  };//这里也不能忘了分号
 }
 var myDog = new Dog("hello","");
 myDog.bark();

PS:

1.什么是构造函数

构造函数 ,是一种特殊的方法。主要用来在创建对象时初始化对象, 即为对象成员变量赋初始值,总与new运算符一起使用在创建对象的语句中。

这是我查阅相关资料的解释,解释的很书本化但意思表达的还是很清楚的。下面请看小例子:

代码如下:

 

 var request = new XMLHttpRequest();

这句表达式是我们在使用AJAX技术时创建request对象时经常用到的。那么我们可以清楚的看到 “new XMLHttpRequest();” 这句话就是一个标准的构造函数!我们 “var” 声明了一个 “request” 对象,用构造函数 “new XMLHttpRequest();” 来初始化这个 “request” 对象为它赋初始值。所以我们可以知道:“与 ‘new' 运算符一起使用用来创建对象并初始化对象的‘函数'就是构造函数”。

比如我们常见的声明数组就是标准的构造函数:var array = new Array();

  2.什么是实例化对象

代码如下:

var request = new XMLHttpRequest();

在面向对象的编程中,通常把用类创建对象的过程称为实例化。

上面我用红色和蓝色将解释的重点标了出来。说白了,实例化对象就是创建对象的过程!

那么什么是“类”呢?根据字面理解我们可以理解为“类型”。比如“蛋糕”,它是一个甜品的分类,也就是一个类型;那么起司蛋糕则是甜品中蛋糕这个分类的具体的个体,也就是对象。

我们知道在程序语言中,“类”是抽象的,我们没有办法来操作它或使用它的方法和属性,只有把这个类实例化成为一个对象,我们才可以去调用它的一系列方法和属性。其实这个也很好理解,在生活中抽象的东西我们没有办法看到它或者捕捉到它,那么自然我们也没有办法去使用它的一些功能,只有将抽象的东西具体到一个个,个体或实际的对象,我们才能清楚的理解或者认识它;编程亦是如此。因此,实例化对象就是由抽象到具体的过程,这个过程就叫实例化。

Javascript 相关文章推荐
JavaScript 上万关键字瞬间匹配实现代码
Jul 07 Javascript
jquery中对于批量deferred的处理方法
Jan 22 Javascript
直接在JS里创建JSON数据然后遍历使用
Jul 25 Javascript
深入理解JavaScript系列(40):设计模式之组合模式详解
Mar 04 Javascript
easyui Droppable组件实现放置特效
Aug 19 Javascript
详解javascript数组去重问题
Nov 06 Javascript
浅谈JavaScript的自动垃圾收集机制
Dec 15 Javascript
Node.js简单入门前传
Aug 21 Javascript
bootstrap模态框嵌套、tabindex属性、去除阴影的示例代码
Oct 17 Javascript
Vue实现textarea固定输入行数与添加下划线样式的思路详解
Jun 28 Javascript
浅谈JS中几种轻松处理'this'指向方式
Sep 16 Javascript
jQuery ajax - getScript() 方法和getJSON方法
May 14 jQuery
javascript中window.open在原来的窗口中打开新的窗口(不同名)
Nov 15 #Javascript
深入浅析JavaScript中prototype和proto的关系
Nov 15 #Javascript
apply和call方法定义及apply和call方法的区别
Nov 15 #Javascript
JavaScript和HTML DOM的区别与联系及Javascript和DOM的关系
Nov 15 #Javascript
WEB前端开发都应知道的jquery小技巧及jquery三个简写
Nov 15 #Javascript
JS使用eval解析JSON的注意事项分析
Nov 14 #Javascript
js读取并解析JSON类型数据的方法
Nov 14 #Javascript
You might like
一篇入门的php Class 文章
2007/04/04 PHP
解析thinkphp中的导入文件标签
2013/06/20 PHP
php判断表是否存在的方法
2015/06/18 PHP
php检查字符串中是否有外链的方法
2015/07/29 PHP
PHP用continue跳过本次循环中剩余代码的注意点
2017/06/27 PHP
JavaScript方法和技巧大全
2006/12/27 Javascript
JScript中的undefined和"undefined"的区别
2007/03/08 Javascript
JavaScript 计算当天是本年本月的第几周
2009/03/22 Javascript
javascript获取dom的下一个节点方法
2014/09/05 Javascript
解决Jquery向页面append新元素之后事件的绑定问题
2015/03/16 Javascript
jquery实现可自动判断位置的弹出层效果代码
2015/10/12 Javascript
AngularJS 实现弹性盒子布局的方法
2016/08/30 Javascript
基于jQuery插件jqzoom实现的图片放大镜效果示例
2017/01/23 Javascript
D3.js中强制异步文件读取同步的几种方法
2017/02/06 Javascript
深入理解ES6的迭代器与生成器
2017/08/19 Javascript
JavaScript判断变量名是否存在数组中的实例
2017/12/28 Javascript
Nodejs调用Dll模块的方法
2018/09/17 NodeJs
[51:17]Mski vs VGJ.S Supermajor小组赛C组 BO3 第三场 6.3
2018/06/04 DOTA
Python中Django框架下的staticfiles使用简介
2015/05/30 Python
python中input()与raw_input()的区别分析
2016/02/27 Python
使用python实现ANN
2017/12/20 Python
Python代码实现KNN算法
2017/12/20 Python
Python(PyS60)实现简单语音整点报时
2019/11/18 Python
Python Numpy 控制台完全输出ndarray的实现
2020/02/19 Python
详解HTML5中的元素与元素
2015/08/17 HTML / CSS
简述你对Statement,PreparedStatement,CallableStatement的理解
2013/03/25 面试题
linux面试相关问题
2013/04/28 面试题
军训自我鉴定100字
2014/02/13 职场文书
行政工作个人的自我评价
2014/02/13 职场文书
职业培训师职业生涯规划
2014/02/18 职场文书
军训教官感言
2014/03/02 职场文书
“四风”问题整改措施和努力方向
2014/09/20 职场文书
基层党支部整改方案
2014/10/25 职场文书
产品质量保证书范本
2015/02/27 职场文书
小学生法制教育心得体会
2016/01/14 职场文书
导游词之河北野三坡
2019/12/11 职场文书