为什么会赢't接收返回值
Why this won't receive return value?
我的HTML代码中有这个
<script type="text/javascript">
var URL = replace();
alert(URL);
</script>
如果我把这个放在标题中,就会显示警报"http://example.com/result"
function replace() {
url = 'http://example.com';
$.get(url, function(data){
var url_gen = data.responseText;
});
return “http://example.com/result";
}
但如果我像这样使用return,它不会有任何作用。为什么?
function replace() {
url = 'http://example.com';
$.get(url, function(data){
var url_gen = data.responseText;
});
return url_gen;
}
只是为了确保,如果我在前面插入警报(url_gen),返回url_gen在第二个代码中,警报显示'http://example.com'所以url_gen中有一个实际值!
注意:这里,假设url_gen是从网页中抓取的字符串。
将url_gen设置为全局,如下所示:
function replace() {
url = 'http://example.com';
var url_gen ='';
$.get(url, function(data){
url_gen = data.responseText;
});
return url_gen;
}
因为1)url_gen
只在$.get()
中定义,不能在外部访问;2) $.get()
是异步的。
解决方法:直接从$.get()
:返回
function replace() {
url = 'http://example.com';
$.get(url, function(data){
var url_gen = data.responseText;
return url_gen;
});
}
相关文章:
- 为什么会赢't接收返回值
- 为什么我得到了一个“;未定义的“;使用“”从Find()返回值;这个“;论点
- 为什么在循环中返回时函数返回值未定义
- 为什么Javascript不从Adobe Bridge返回值
- 为什么当我调用具有返回值的函数时,我的 onclick 事件不起作用
- 为什么要使用与 typeof 的返回值进行严格比较
- 为什么函数中的innerHTML在向innerHTML返回值时会被忽略
- 为什么函数 f 中的返回值返回显示函数而不是 x 值
- 为什么 javascript 会保留在外部函数中发生的局部变量重新分配,而不必捕获返回值
- 为什么 JavaScript 函数的返回值未定义
- $q.all 返回状态而不是值 - 为什么
- 为什么我的递归函数调用没有返回值
- 为什么我无法获得 BAC 的返回值
- 为什么AJAX的返回值几乎立即消失
- 为什么我在使用ajax从php发送和返回值时会得到javascript和html代码
- 为什么要在http.createServer()中返回值呢
- 为什么我的返回值未定义(JavaScript)
- 为什么当返回值在另一行时,Javascript返回语句不能工作?
- 为什么prototype函数在javascript中没有返回值
- 为什么在对象返回值时会返回undefined