问题:function的定义和声明,在对象里面的函数不初始化吗?
<script type="text/javascript"> function fousFun(id){ $("#"+id).focusin(function() { $("#"+id).val(""); }); } function fousOut(id){ $("#"+id).focusout(function() { $("#"+id).val("找人");; }); } var header={ topHtml:function(){ return '你好:<input id="inputId" name="inputName" value="找人" onfocus="fousFun(this.id);" onblur="fousOut(this.id);" />'; }, init:function(){ $("body").append(this.topHtml); /* $("#inputId").focusin(function() { $("#inputId").val(""); }); $("#inputId").focusout(function() { $("#inputId").val("找人"); }); */ } }; header.init(); </script>
将两个函数放在对象header里,老说未定义,主要的原因是定义的函数有作用域,而调用函数的位置在body里的标签的onfous函数,此时调用的是window对象的函数,而不能调到header里的方法。
如果在header里使用绑定函数的方法可以调用header里的方法,例如如下:
<script type="text/javascript"> var header={ topHtml:function(){ return '你好:<input id="inputId" name="inputName" value="找人" />'; }, fun1:function(){ $("#inputId").val(""); }, fun2:function(){ $("#inputId").val("找人"); }, init:function(){ $("body").append(this.topHtml); $("#inputId").on("focus",this.fun1); $("#inputId").on("blur",this.fun2); } }; header.init(); </script>
相关推荐
本篇文章将深入探讨JS函数的三种声明方式:函数声明、函数表达式以及箭头函数。 1. **函数声明** 函数声明是最常见的方式,它以`function`关键字开头,后跟函数名,然后是参数列表,最后是函数体。例如: ```...
JavaScript函数声明与递归调用是编程语言的基础概念,尤其对于JavaScript初学者至关重要。JavaScript的函数具有独特的特性,因为它们是顶级对象,这意味着它们可以像普通变量一样被处理。理解这些概念有助于编写更加...
不过,由于【标题】中提供了文档的名称——"JavaScript函数式编程.pdf",我可以根据这个名称扩展出关于JavaScript函数式编程的知识点。 JavaScript函数式编程的知识点非常丰富,涉及很多方面的内容,下面将详细介绍...
总结来说,理解JavaScript中的函数声明和函数表达式之间的差异是至关重要的,因为这会影响到代码的执行顺序和可访问性,从而可能引发预期外的错误。在编写JavaScript代码时,应根据具体需求选择合适的函数定义方式,...
在JavaScript中,函数的声明方式主要有两种:函数声明(Function Declaration)和函数表达式(Function Expression)。尽管它们在表面上看起来相似,但它们之间存在着本质的区别。下面将详细地对这两者的概念和区别...
在JavaScript中,函数声明(Function Declaration)和变量声明(Variable Declaration)之间存在显著的区别,这主要体现在它们的提升(Hoisting)行为、作用域以及执行时机等方面。理解这些差异对于编写可预测且无...
【函数声明与函数表达式】在JavaScript中,函数是第一类对象,这意味着它们可以作为值进行传递和存储。本文将重点讨论两种常见的函数定义方式:函数声明和函数表达式,特别是函数声明的声明提前(Hoisting)现象。 ...
本文将深入探讨JavaScript的函数声明与应用。 首先,我们需要理解函数声明的两种基本形式:函数声明(Function Declaration)和函数表达式(Function Expression)。函数声明是最常见的形式,它允许我们在任何地方...
javascript中声明函数的方法有两种:函数声明式和函数表达式. 区别如下: 1).以函数声明的方法定义的函数,函数名是必须的,而函数表达式的函数名是可选的. 2).以函数声明的方法定义的函数,函数可以在函数声明之前调用,...
而《JavaScript函数式.zip》可能是一份关于JavaScript函数式编程的资料集合,函数式编程是一种编程范式,强调使用函数和避免改变状态。其中可能涵盖以下知识点: 1. **纯函数**:理解纯函数的定义,即给定相同的...
在JavaScript编程中,函数声明与函数表达式是两种不同定义函数的方式,它们在使用场景和作用机制上存在明显的区别。为了更好地理解这两种定义方式,让我们深入探讨它们的定义、区别以及各自的特点。 首先,函数声明...
函数声明在JavaScript中具有“声明前置”(Hoisting)的特性,这意味着无论你在代码的哪一行声明了一个函数,它都会被提升到当前作用域的顶部。例如: ```javascript console.log(fd()); // true function fd() { ...
JavaScript函数是编程语言的核心组成部分,尤其在Web开发中起着至关重要的作用。这份"JavaScript函数速查手册"涵盖了JavaScript函数的各个方面,旨在帮助开发者快速查找和理解各种函数的用法和特性。 一、函数基础 ...
一、函数声明 在JavaScript中,有多种方式来声明函数: 1. `function` 关键字声明:这是最常见的方式,如 `function myFunction() {}`。这种声明方式遵循词法作用域,函数在声明时就已经存在于当前作用域中。 2. ...
JavaScript是Web开发中不可或缺的一部分,它提供了两种声明函数的方式:函数声明式和函数表达式。这两者虽然看似相似,但存在显著的区别。 1. **函数声明式**:这是JavaScript中最直接的函数定义方式,通常以`...
### JavaScript中的函数声明与函数表达式 在JavaScript中,函数是一种非常重要的编程构造,它可以被定义为函数声明或函数表达式。这两种定义方式各有特点,并且在不同的上下文中有着不同的行为。 #### 函数声明...
### JavaScript函数与对象详解 在JavaScript中,函数与对象是两个核心概念,它们构成了这门语言的基石。本文将深入探讨这两个主题,帮助读者更好地理解并掌握JavaScript。 #### 函数 函数是JavaScript中的第一类...