javascript:在另一个函数中获取函数的变量值

Mar*_*ria 15 javascript variables function call

好吧所以我在体内有这个代码:

<input type="text" value="haha" id="full_name"/>
Run Code Online (Sandbox Code Playgroud)

而这段代码在脚本中

<script language="javascript" type="text/javascript">
    function first(){
        var nameContent=document.getElementById('full_name').value;
    }

    function second() {
        first();
        y=nameContent; 
        alert(y);
    }
    second();
</script>
Run Code Online (Sandbox Code Playgroud)

我想要一个警告显示元素full_name的值,但它似乎不起作用,有谁知道为什么?:S

Ble*_*der 18

nameContent只在first()函数中存在,就像你在first()函数中定义它一样.

要扩大其范围,请在函数之外定义它:

var nameContent;

function first(){
    nameContent=document.getElementById('full_name').value;
}

function second() {
    first();
    y=nameContent; alert(y);
}
second();
Run Code Online (Sandbox Code Playgroud)

一个稍微好一些的方法是return值,因为全局变量很快就会变得混乱:

function getFullName() {
  return document.getElementById('full_name').value;
}

function doStuff() {
  var name = getFullName();

  alert(name);
}

doStuff();
Run Code Online (Sandbox Code Playgroud)