簡體   English   中英

創建並填充json對象

[英]Creating and populating a json object

我需要使用來自方法的值構造和填充json對象。 有點背景:我正在搜索帶有指定關鍵字的pdf文檔,如果找到任何匹配項,我需要保存的每個匹配項: - 找到匹配項的整個句子 - 搜索項(在別處定義:搜索詞總是一樣的,所以這里真的很多,但我可能需要它在json對象中,這就是為什么我包括它) - 結果(這是在整個句子中找到搜索詞的索引,它應該是一個整數)所以,這里是一些代碼。 我在循環中調用了這個函數(循環遍歷頁面,然后有第二個循環遍歷文本):

for(var i = 0; i < items.length; i++){
    lineWithResult = searchPdf(block.str);
    if(lineWithResult != null){
        console.log(lineWithResult + " wordCounter is " + wordCounter);
    }
}

和功能本身:

function searchPdf(toSearch){
    var result = toSearch.toLowerCase().indexOf(searchTerm);
    if(result >=0){//if match is found
        wordCounter++;
        //console.log("toSearch " + toSearch + " result is " + result + " wordCounter " + wordCounter);
        return toSearch;
    }
    else{//if match not found
        return null;
    }

}

所以我需要構建一個json對象,在每次迭代時都會接受上面討論的參數:

那么,最好的方式是什么 - 我對json有點生疏? 我想我會先創建一個像這樣的空對象(如果這甚至是一個有效的定義):

var searchResult = {"Line" : "", "SearchTerm" : "", "Result" : ""}

如果以上是正確的,我在哪里定義對象以及如何用相關值填充它? 請記住,會有很多行,一個搜索詞和很多結果,因為我將使用的文檔(pdf)非常大,可以返回大量的匹配謝謝

說這樣的話:

 var searchResult = {"Line" : "", "SearchTerm" : "", "Result" : ""}

您已經定義了該對象。 JavaScript(此時)是典型的,而不是基於“類”的語言。 JavaScript中的JSON不僅僅是一個簡單的JavaScript對象。 如果要創建多種此類對象,可以使用各種選項。 我建議你閱讀有關JS Object創建模式的內容。

這是一個很好的鏈接

話雖這么說,你可以這樣做:

 // ... maybe inside a function
 return {
     line: myLineValue,
     searchTerm: mySearchtermValue,
     result: myResult
 }

沒有必要使用空值初始化; 你只需用大括號創建對象。

希望這對你有意義; 如果沒有,請在評論中告訴我,我會盡力改進我的答案。 :-)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM