有没有办法在 JSON 对象字符串化后替换文本?
Is there a way to replace text from a JSON object after it has been stringified?
我有一些 JSON 数据,其中包含一些 url。我通过遍历工作正常的对象从 json 中提取这些 urls。然而,urls 在它们前面添加了 'page: ',我试图将其替换为 'https://'。
我无法让替换 属性 工作并且每次都给我相同的结果。
我尝试以不同的方式使用 replace() 属性 并使用 console.log 查看我的结果。我还尝试将 JSON 字符串化,因为我听说这是处理它的好方法。
每次我仍然看到'page: '这个词,而且它还没有被替换。
function showTopArticles(jsonObj) {
var getEntries = jsonObj.feed.entry;
var stringified = JSON.stringify(getEntries);
console.log(getEntries);
for (var i = 0; i < getEntries.length; i++) {
var list = document.createElement('article');
var articleTitle = document.createElement('li');
var articleUrl = document.createElement('a');
articleTitle.textContent = getEntries[i].title.$t;
articleUrl.textContent = getEntries[i].content.$t;
articleUrl.textContent.replace("page: ", "https://");
console.log(articleUrl.textContent);
list.appendChild(articleTitle)+list.appendChild(articleUrl);
section.appendChild(list);
}
}
我希望输出 url 为“https://www.google.com”,但我看到的却是 'page : www.google.com'
replace()
returns一个修改值,它不修改原来的字符串。
你想要这样的东西:
articleUrl.textContent = articleUrl.textContent.replace("page: ", "https://");
我有一些 JSON 数据,其中包含一些 url。我通过遍历工作正常的对象从 json 中提取这些 urls。然而,urls 在它们前面添加了 'page: ',我试图将其替换为 'https://'。
我无法让替换 属性 工作并且每次都给我相同的结果。
我尝试以不同的方式使用 replace() 属性 并使用 console.log 查看我的结果。我还尝试将 JSON 字符串化,因为我听说这是处理它的好方法。
每次我仍然看到'page: '这个词,而且它还没有被替换。
function showTopArticles(jsonObj) {
var getEntries = jsonObj.feed.entry;
var stringified = JSON.stringify(getEntries);
console.log(getEntries);
for (var i = 0; i < getEntries.length; i++) {
var list = document.createElement('article');
var articleTitle = document.createElement('li');
var articleUrl = document.createElement('a');
articleTitle.textContent = getEntries[i].title.$t;
articleUrl.textContent = getEntries[i].content.$t;
articleUrl.textContent.replace("page: ", "https://");
console.log(articleUrl.textContent);
list.appendChild(articleTitle)+list.appendChild(articleUrl);
section.appendChild(list);
}
}
我希望输出 url 为“https://www.google.com”,但我看到的却是 'page : www.google.com'
replace()
returns一个修改值,它不修改原来的字符串。
你想要这样的东西:
articleUrl.textContent = articleUrl.textContent.replace("page: ", "https://");