javascript - 在函数外访问 JavaScript 函数变量

标签 javascript parameters

我为我的新手道歉,但我不清楚如何在函数外访问函数内的变量。我知道您需要告诉他们一些方法,但我不能 100% 确定原因和方法。

以下面的代码为例,我想在函数之外的整个代码中使用var degree。我该怎么做?

function DegreeToMil() 
{

//Degree's to Mils: 1 Degree = 17.777778 Mils

var degree = 10;
var mils = degree * 17.777778;

return mils;

 }

最佳答案

其实很简单,在函数外定义即可。

编辑:更新了一个示例,并在注释中解释了所做的工作及其工作原理。

    DegreesToMils.degrees = 10; /* This is a static variable declaration to make sure it isn't undefined
                             * See note 1 below */

function DegreesToMils(degrees) {
    if (degrees !== undefined) {
        DegreesToMils.degrees = degrees; /* If the parameter is defined, 
                                          * it will update the static variable */
    }

    var milsPerDegree = 17.777778; /* This is a variable created and accessible within the function */

    return DegreesToMils.degrees * milsPerDegree; /* The function will return 177.77778 */
}

console.log(DegreesToMils.degrees); /* Prints 10, Note 1: This would be undefined if
                                     * not declared before the first call to DegreesToMils() with a 
                                     * defined parameter
                                     */
console.log(DegreesToMils(10)); /* Prints 177.77778 */
console.log(DegreesToMils(9)); /* Prints 160.00000200000002, Sets DegreesToMils.degrees to 9 */
console.log(DegreesToMils.degrees); /* Prints 9 */

关于javascript - 在函数外访问 JavaScript 函数变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18049118/

相关文章:

sql - 如何在Access中向参数传递多个值?

javascript - 创建一个将参数转换为数组的函数

javascript - 如何在 Sails.js 中生成唯一的发票 ID

javascript - 如何动态更新 HTML 属性

javascript - 清空下拉列表中的第一个元素

mysql - Rails 使用表单基于多个参数搜索模型

rust - 我无法理解 Rust "scope"定义(Rust 编程语言,第二版。Klabnik & Nichols)

javascript - 即时将 JSX 字符串编译为组件

javascript - 我如何在 React 重新渲染之前转换动画?

java - 如何通过检查将参数传递给函数