`

javascript 同名函数

阅读更多
如果一个js里有两个以上的同名函数,会执行哪个呢?答案是最后一个,后面的函数会覆盖前面的:

function scalability() {
	alert("The first throne")
}

function scalability() {
	alert("The second throne");
}

scalability();


执行结果:
The second throne

如果其中一个的参数类型和调用处一样,是否会调用呢?

function scalability(obj) {
	alert("The first throne");
}

function scalability() {
	alert("The second throne");
}

scalability("renouncement");


执行结果:
The second throne

可以看出,还是调用最后一个。在javascript中,只要函数名称相同,就是一个函数。

如果我们要取出参数中的数据(参数签名可有可无):
function scalability() {
	var val1 = arguments[0];
	var val2 = arguments[1];
}

scalability("instrumentation", "remedy");
分享到:
评论

相关推荐

    javascript的函数

    在JavaScript中,函数也是对象,因此在定义函数的同时,一个与函数名同名的对象也被创建了。 2. **函数表达式(Function Expression)** 另一种定义函数的方法是通过函数表达式,即将函数赋值给一个变量: ```...

    理解Javascript函数形式参数与arguments

    理解Javascript函数形式参数与arguments 在JavaScript中,函数的形式参数和arguments之间存在着微妙的关系。为了深入理解这方面的知识,我们需要首先了解形式参数和实际参数的概念。形式参数指的是定义方法时所明确...

    第三章JavaScript函数.docx

    - **命名规则**:函数命名遵循变量命名规则,但应避免与变量同名,若必要,可使用前缀区分,如`funcMultiply`。 - **返回值**:每个函数结束时应有`return`语句,即使不返回值。 - **变量作用域**:明确区分局部...

    浅谈js中同名函数和同名变量的执行问题

    总结一下,在JavaScript中,同名函数和同名变量的执行问题主要受作用域覆盖规则的影响。在全局作用域或者函数作用域中,同名的函数和变量都是后者覆盖前者。而在闭包作用域中,同名的函数可能不会像变量一样被直接...

    浅谈JavaScript的函数及作用域

    这意味着后来的同名函数定义会覆盖之前的定义。 (二)JavaScript的作用域 作用域决定了变量在何处可见以及它们的生命周期。JavaScript主要有两种作用域: 1. **全局作用域**: 全局变量在整个脚本中都可用,...

    JavaScript重载函数实例剖析_.docx

    ### JavaScript重载函数实例剖析 #### 一、引言 在传统的面向对象编程语言如Java或C++中,重载(Overloading)是一种常见的特性,它允许开发者在同一作用域内定义多个同名但参数列表不同的方法。然而,在...

    JavaScript

    13. **同名函数覆盖**:JavaScript中,后定义的同名函数会覆盖前面的,所以`add(10)`将输出20,选项C正确。 14. **对象与方法**:在JavaScript中,对象的方法可以在实例化后添加。给定代码中,`student`对象被创建...

    浅谈JavaScript function函数种类

    但在JavaScript中,后定义的函数会覆盖先前定义的同名函数。因此,当调用一个函数时,不管有多少参数传入,实际上只会调用最新的那个函数,这就意味着函数的重载在JavaScript中是不支持的。 JavaScript提供了多种...

    javascript 函数及作用域总结介绍

    在JavaScript中,如果同一个作用域内存在同名的函数和变量,在执行到变量赋值之前,同名函数会生效,而变量赋值之后,变量会覆盖函数。这种行为可能导致难以追踪的bug,特别是在使用第三方库和复杂的项目中。 以上...

    JavaScript基础篇(6)之函数表达式闭包

    在条件语句中定义函数需要注意函数声明提升的问题,因为函数声明提升,if条件内的函数声明会覆盖外部同名的函数声明。 ```javascript var sayHi; if(true) { sayHi = function() { alert("1"); } } else { ...

    javascript匿名函数实例分析

    JavaScript是一种广泛使用的脚本语言,它拥有灵活而强大的函数定义方式。函数是JavaScript中最基础且最重要的组成部分,它可以封装任意多条语句,并在需要的时候执行。本文将围绕JavaScript的匿名函数展开,通过实例...

    自行定义和重写的JavaScript函数.docx

    首先,JavaScript允许函数自我定义,这通常是通过将一个匿名函数赋值给与原函数同名的变量来实现的。下面是一个简单的例子: ```javascript function party() { console.log('Wow this is amazing!'); party = ...

    javascript的函数作用域

    JavaScript 函数作用域知识点详解: JavaScript 是一种基于函数作用域的语言。在讨论函数作用域之前,有必要了解什么是作用域。在编程中,作用域是变量和函数的可访问范围。作用域决定了代码块外部能否访问到代码块...

    通过实例理解javascript中没有函数重载的概念

    因此,在JavaScript中,函数参数的不同并不足以区分两个同名函数。 4. 对象和方法 在JavaScript中,函数可以作为对象的属性存在,而对象可以有多个属性拥有相同的名字。但是,由于它们是作为不同对象的属性存在,...

    对母版页使用css与javascript

    其次,两个内容页中CSS声明或JavaScript函数不能同名,否则会产生冲突。 解决方案二:在内容页的PageLoad事件中通过代码来指定本内容页的CSS文件 这种方法可以在程序运行时动态更改所需的CSS文件,但对JavaScript...

    从JavaScript的函数重名看其初始化方式

    当涉及到函数重名时,JavaScript会用最后定义的函数覆盖之前定义的同名函数。例如: ```javascript function funAlert() { alert('A'); } function funAlert() { alert('B'); } ``` 在这种情况下,调用`...

    javascript变量作用域

    在 JavaScript 中,函数体内部的局部变量的优先级比同名的全局变量高。这是因为 JavaScript 会优先查找当前作用域中的变量,而不是全局变量。 JavaScript 还没有块级作用域,这意味着在 if 语句、for 循环、while ...

    JavaScript function函数种类详解

    在JavaScript中,如果定义了同名函数,后面的定义会覆盖前面的,这称为函数的覆盖。例如: ```javascript function add(value1) { return n1 + 1; } function add(value1, value2) { return value1 + 2; } ``` ...

    深入理解javascript构造函数和原型对象

    这种方式下,由于所有对象共享同一个构造函数,因此不同对象的同名方法不会是同一个Function实例,这可能会造成内存上的浪费。 构造函数模式解决了工厂模式中方法共享的问题,但其方法依旧是作为对象实例的一部分...

    javaScript内置函数

    在JavaScript中,内置函数是预先定义好的功能,开发者可以直接调用,无需手动创建。这些内置函数极大地提高了编程效率,简化了复杂的任务处理。接下来,我们将深入探讨JavaScript的一些关键内置函数。 1. **Array....

Global site tag (gtag.js) - Google Analytics