Json parse with in JavaScript


Json parse with in JavaScript

我想使用自动完成来扫描我的网站。

我在PHP中使用这个函数:

    public function searchAutoCompleteAjax(){
    $keyword = Input::get('keyword');
    $result = array();
    if(!empty(trim($keyword))){
        $mongoResult = MongoDB::instance(true)->collection("items")->like('name',$keyword)->limit(0,5)->fetch();
        if($mongoResult){
            foreach ($mongoResult as $key => $item) {
                $result[] = $item['name'];
            }
        }
    }

    echo json_encode(array("error"=>0,"message"=>"Success","result"=>$result));
}  

我在此行中对此代码有 5 个查询

$mongoResult = MongoDB::instance(true)->collection("items")->like('name',$keyword)->limit(0,5)->fetch(); 

现在我想在 JavaScript 中使用这 5 个查询。

这是我的JavaScript代码:

$(function(){
  var currencies = [
  
    { value: 'Value-1' },
    { value: 'Value-2' },
    { value: 'Value-3' },
    { value: 'Value-4' },
    { value: 'Value-5' },
  ];
  
  // setup autocomplete function pulling from currencies[] array
  $('#search-box').autocomplete({
    lookup: currencies,
    });
});  

我想检查JavaScript中的JSON数据。但是不工作我有任何方法。

如何检查我的 Java 脚本中的 Json 数据?

大多数浏览器都支持使用 JSON.parse(),可以按如下方式使用。

var json = '{"result":true,"count":1}';
var obj = JSON.parse(json);

但是,对于那些不这样做的人,您可以使用jQuery方法。为获得最佳效果,请使用以下命令。

var json = '{"result":true,"count":1}';
var obj = JSON && JSON.parse(json) || $.parseJSON(json);

好吧,解析为 JSON 后,您可以将 obj 用作数组并从中获取数据。例如,要获取 json 中的第一个条目,请使用 obj[0].fieldName。

例如

var text = '{"employees":[' +
'{"firstName":"John","lastName":"Doe" },' +
'{"firstName":"Anna","lastName":"Smith" },' +
'{"firstName":"Peter","lastName":"Jones" }]}';
obj = JSON.parse(text);
document.getElementById("demo").innerHTML =
obj.employees[1].firstName + " " + obj.employees[1].lastName;

有关进一步参考,请参阅此链接。