替换'null'& # 39;假# 39;问题
Javascript replace 'null' to 'false' issue
var x = [{
"answerswer": null,
"answerswered": true,
// many more fields here
"answerswers": {
"correct": null,
"response": null
}
}, {
"answerswer": null,
"answerswered": true,
// many more fields here
"answerswers": {
"correct": null,
"response": null
}
}];
var string = JSON.stringify(x).toString().replace(/'null/g, "false");
var json=jQuery.parseJSON(string);
console.log(json);
当我试图将null替换为false时,它不会替换。它将工作,当你替换其他词,如"回答",甚至":null"是工作的,只有null不工作。谁能解释一下是什么问题吗?
最好避免JSON使用但递归函数:
function convertNullToFalse(obj){
for(var k in obj){
if(obj[k] === null){
obj[k] = false;
continue;
}
if(typeof obj[k] === "object"){
convertNullToFalse(obj[k]);
}
}
}
convertNullToFalse(x);
console.log(x);
您正在转义'n
,这是换行符。您需要文字n
:
var x = [{
"answerswer": null,
"answerswered": true,
// many more fields here
"answerswers": {
"correct": null,
"response": null
}
}, {
"answerswer": null,
"answerswered": true,
// many more fields here
"answerswers": {
"correct": null,
"response": null
}
}];
var string = JSON.stringify(x).toString().replace(/null/g, "false");
var thing = jQuery.parseJSON(string);
console.log(thing);
jsFiddle
另外,你正在使用JSON.stringify
为什么不使用反向JSON.parse()
太而不是使用jQuery?
最后,为什么要解析这个?为什么不直接使用默认值访问答案:
var ans = x.answer || false; // Returns false for any falsey value, including null
相关文章:
- 在指令控制器中使用$attrs时出现问题
- 将PHP变量传递给jQuery时遇到问题
- Canvas Html5绘图应用程序,移动画布会导致重大问题
- 参数变量出现ngTable指令问题
- 剑道网格jQuery动画()问题
- 数组在递归方法中设置为null
- 我的jQuery插件参数没有正确启动,遇到了问题
- Phonegap-(安卓/iphone)多个图像的图像库出现问题
- TableExport jquery插件:文件名和扩展名问题
- JavaScript Pub/Sub属性访问问题
- JavaScript异步问题
- 字符串在将其传递给另一个活动Android JavaScript时读取Null
- 如何解决Yii中的页面刷新问题
- 我该如何解决这个问题?“未捕获的类型错误:无法读取 null 的属性'appendChild'”
- Coffeescription出现奇怪问题-文本参数发送为null
- 自定义元素问题:视图模型中的ref元素为null
- 解决本地主机上jQuery.get()返回null的问题
- d3选择问题offsetParent为null
- 替换'null'& # 39;假# 39;问题
- 如何修复IE问题'parentNode'是否为null或不是Ext.js.1.1的对象