美文网首页让前端飞
JavaScript:函数参数

JavaScript:函数参数

作者: 前小小 | 来源:发表于2021-04-20 22:15 被阅读0次

参数概念

函数运行的时候,有时需要提供外部数据,不同的外部数据会得到不同的结果,这种外部数据就叫参数。

参数可以分为:

  • 形参:在定义函数时,声明的参数变量仅在函数内部可见。
  • 实参:在调用函数时,实际传入的值。

示例
定义 JavaScript 函数时,可以设置零个或多个参数。

function f(a, b) {  //设置形参a和b
    return a + b;
}

var x = 1, y = 2;  //声明并初始化变量
console.log(f(x,y));  //调用函数并传递实参

在上面示例中,a、b 就是形参,而在调用函数时向函数传递的变量 x、y 就是实参。

参数规则

  • 函数定义时形式参数没有指定数据类型。
  • 函数对实际参数没有进行类型检测。
  • 函数对实际参数的个数没有进行检测。

默认参数

如果函数在调用时未提供实际参数,参数会默认设置为: undefined

<script>
function myFunction(x, y) {
    y = y || 0;
    return x * y;
}
document.getElementById("demo").innerHTML = myFunction(4);
</script>
  • 如果y已经定义 , y || 返回 y, 因为 y 是 true, 否则返回 0, 因为 undefined 为 false。

参数传递

javascript 中所有函数的参数都是按值传递的。也就是说,把函数外部的值复制到函数内部的参数,就和把值从一个变量复制到另一个变量一样。

  • 基本类型值
    在向参数传递基本类型的值时,被传递的值会被复制给一个局部变量(命名参数或arguments对象的一个元素)
function addTen(num){
num += 10;
return num;
}
var count = 20;
var result = addTen(count);
console.log(count);//20,没有变化
console.log(result);//30
  • 引用类型值
    在向参数传递引用类型的值时,会把这个值在内存中的地址复制给一个局部变量,因此这个局部变量的变化会反映在函数的外部
function setName(obj){
obj.name = 'test';
}
var person = new Object();
setName(person);
console.log(person.name);//'test'

当在函数内部重写引用类型的形参时,这个变量引用的就是一个局部对象了。而这个局部对象会在函数执行完毕后立即被销毁

function setName(obj){
obj.name = 'test';
console.log(person.name);//'test'
obj = new Object();
obj.name = 'white';
console.log(person.name);//'test'
}
var person = new Object();
setName(person);

相关文章

  • JavaScript函数、this以及闭包

    JavaScript笔记(三) 函数 理解函数 Javascript函数的参数与大多数其他语言中的函数的参数不同。...

  • ES6 笔记 箭头函数

    箭头函数其实就是lambda函数,JavaScript中的匿名函数 多个参数时,参数外加上括号(或者使用rest ...

  • JavaScript学习笔记(三)

    主要源于廖雪峰老师的JavaScript教程 1. 高阶函数 参数传入函数 JavaScript的函数其实都指向某...

  • 2018-06-06

    JavaScript函数 1. arguments对象 — 函数的实参参数集合 // 循环...

  • TypeScript函数使用

    使用函数 有可选参数的函数 与JavaScript不同,调用函数时传的参数的数量或者类型不符合函数中定义的参数要求...

  • JavaScript学习笔记-3(函数)

    JavaScript学习笔记-(函数) 函数 1.函数的定义和调用 1. (x)括号内列出函数的参数,多个参数以,...

  • JavaScript函数参数

    日常的js代码中,有很多的重复js代码,例如下面这个,我们点击不同的颜色按钮,可以将div中的颜色进行变换 补充说...

  • JavaScript:函数参数

    参数概念 函数运行的时候,有时需要提供外部数据,不同的外部数据会得到不同的结果,这种外部数据就叫参数。 参数可以分...

  • 值传递or引用传递

    javascript都是按值传递 javascript的函数的参数传递,传递的都是值,参数是 Object 类型的...

  • 系统学习 JavaScript 的笔记【4】

    JavaScript 函数 在函数中只要执行完了 return ,函数就会停止并且退出 参数的理解,参数的传递在 ...

网友评论

    本文标题:JavaScript:函数参数

    本文链接:https://www.haomeiwen.com/subject/eqsplltx.html