Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/478.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 每个循环都需要访问jQuery外部的变量_Javascript_Jquery - Fatal编程技术网

Javascript 每个循环都需要访问jQuery外部的变量

Javascript 每个循环都需要访问jQuery外部的变量,javascript,jquery,Javascript,Jquery,我有一个json字符串,看起来像这样 var jsonString = '[{"name":"John Smith","uid":1234,{"name":"Susie Something","uid":4567"}]'; 我正在做一个函数,它将返回所有用逗号分隔的UID。例如: 12344567 我现在做的是 function getUIDS(json){ var uids = ''; parsed = JSON.parse(json); $.each(friends, function(

我有一个json字符串,看起来像这样

var jsonString = '[{"name":"John Smith","uid":1234,{"name":"Susie Something","uid":4567"}]';
我正在做一个函数,它将返回所有用逗号分隔的UID。例如: 12344567

我现在做的是

function getUIDS(json){
var uids = '';
parsed = JSON.parse(json);

$.each(friends, function() {
        uids = uids + this.uid.toString() + ',';
 });
 reuturn uids;

}

然而,没有任何回报。如何访问jquery线程创建的变量(在jquery线程之外)。

如果这是完整的代码,并且在任何地方都没有定义friends,则传递解析而不是friends

function getUIDS(json){
var uids = '';
parsed = JSON.parse(json);

$.each(parsed, function() {
        uids = uids + this.uid.toString() + ',';
 });
 reuturn uids;

}
尝试:

代码中的问题是:(请参阅代码注释)

尝试修复json:

var jsonString = '[{"name":"John Smith","uid":1234},{"name":"Susie Something","uid":4567"}]';
并稍微更改您的代码:

function getUIDS(json) {
   var uids = '',
       friends = JSON.parse(json);

   $.each(friends, function() {
       uids += this.uid + ',';
   });

   return uids;
}
重要的部分是在
friends
上循环,并正确拼写
return


你也应该考虑使用某人建议的<代码>连接< /代码>。这将确保在

UID
字符串的末尾不会出现尾随“,”(除非这是您想要的)。

首先,您的jsonString格式不正确。可能因为
reuturn
而没有返回任何内容?此外,请检查JSONString。第三,您应该先解析JSON,然后才能将其用作对象。第四,您正在迭代
朋友
(未定义),而不是
解析的
var jsonString = '[{"name":"John Smith","uid":1234},{"name":"Susie Something","uid":4567"}]';
function getUIDS(json) {
   var uids = '',
       friends = JSON.parse(json);

   $.each(friends, function() {
       uids += this.uid + ',';
   });

   return uids;
}