在另一个函数中使用变量,然后调用新函数
Use variable in another function then call the new function
在这里,我尝试在函数New()中使用变量,该变量是在函数Test()中创建的。
我仍然对如何使用全局变量感到有些困惑。
function New(){
Test();
//this show nothing
alert(myName);
}
function Test() {
myName = "John";
}
New();
即使我执行"var myName;",这些功能也不起作用。
仍在搜索
检查这个小提琴
要更改的内容:
1) 使用function New(){}
代替function New{}
2)从测试函数返回myName并将其存储在新函数的新变量中
function New(){
var myName= Test();
//this show nothing
alert(myName);
}
function Test() {
var myName = "John";
return myName
}
New();
更新:是的,您也可以将myName定义为全局变量并使用它
如果要声明要使用的变量,请使用 var 关键字。执行此操作时,执行此操作的位置决定了变量的"范围"。如果要在两个函数中使用该变量,只需在两个函数之外声明变量:
var myVariable = "Something";
function1(){
myVariable = "something else";
}
function2(){
myVariable = "something else again";
}
共享数据的另一种方法是将该数据作为参数传递到函数中:
function1(){
var myVariable = "Something";
function2(myVariable);
}
function2(someName){
alert(someName); // "Something"
}
在您的情况下,您没有使用 "var" 关键字来声明您的变量,因此它变成了全局变量,但您的代码中有拼写错误,因此它没有运行。
这只是一个小的类型错误。只需在"新建"后添加大括号
var myName; // have myName global ie, outside all functions
function New(){ // needs the braces() for New to be a function
Test();
alert(myName);
}
function Test() {
myName = "John";
}
New();
全局声明myName
,然后在函数返回Test()
定义myName
。声明函数时,无论如何都要始终使用关键字"function"、"()"和"{}"。
var myName;
function New() {
alert(Test());
}
function Test() {
myName = "John";
return myName;
}
New(Test);
全局变量是其作用域针对特定类而不限于函数的东西。
您可以在类内创建变量 myName,但在函数外部创建变量,并在类内的任何地方使用它。
var myName="";
function New{
Test();
//this show nothing
alert(myName);
}
function Test() {
myName = "John";
}
New();
相关文章:
- 函数()和新函数()之间的区别
- 返回一个新函数,而不是工厂中的对象
- 替换新函数中的 arguments.callee
- 将“e”传递给一个新函数 - javascript
- JavaScript新函数混淆
- NodeJS:undefined不是一个新函数'新'
- javascript onclick将onclick更改为新函数
- JavaScript可以根据用户输入创建一个新函数
- Jquery原型与新函数冲突
- 什么'新函数和函数之间的区别
- JavaScript新函数范围ReferenceError
- Javascript新函数构造函数没有't返回所需的值
- 如何在不创建新函数的情况下更改此函数中变量的值
- 向对象添加新函数
- 如何将新函数绑定到元素的 onclick 事件,并使其在所有其他绑定函数之前运行
- 用于初始化对象的编码模式 - 构造函数(新)与 Object.create()(Crockford)
- jQuery - 在事件上创建新函数
- 函数如何在 Javascript 中创建新函数
- 在另一个函数中使用变量,然后调用新函数
- IE7 新函数返回对象而不是函数