如何为javascript调用JSON文件中的新数据
我想检索数据以便再次使用,如何使用它 示例脚本如何为javascript调用JSON文件中的新数据,javascript,Javascript,我想检索数据以便再次使用,如何使用它 示例脚本 const data={a:1,b:2,c:3} 函数deleteData(){ const newData=data 对于(让索引=0;索引
const data={a:1,b:2,c:3}
函数deleteData(){
const newData=data
对于(让索引=0;索引<2;索引++){
如果(索引==1){
删除新数据。a
}
}
}
删除数据()
日志(“旧数据:”+数据)
log(“新数据:”+newData)
预期的旧数据:{a:1,b:2,c:3}
新数据:{b:2,c:3}
使用对象。分配或
const data={a:1,b:2,c:3}
const newData=Object.assign({},data)//或{…data}
函数deleteData(){
对于(让索引=0;索引<2;索引++){
如果(索引==1){
删除新数据。a
}
}
}
删除数据()
日志(“旧数据:”,数据)
log(“新数据:”,新数据)
const data={a:1,b:2,c:3}
函数deleteData(){
const newData=Object.assign({},data)
对于(让索引=0;索引<2;索引++){
如果(索引==1){
删除新数据。a
}
}
log(“新数据:”,新数据)
}
删除数据()
日志(“旧数据:”,数据)
有几点:
我不确定您是试图从对象中删除多个元素,还是只是试图删除一个元素。如果只删除一个,则不需要for
循环。直接删除即可
const
关键字在最近的块范围内声明一个变量。在您的例子中,这就是deleteData
函数。您需要将它声明为函数外部的let
,或者声明为函数内部的var
,或者从函数返回它
删除项目时,该对象不是新对象,而是对旧对象的引用。因此,两者都在被修改。要防止出现这种情况,请将该对象复制到新对象中并进行修改。要执行此操作,请使用Object.assign
,或仅使用扩展运算符
最好的方法是:
const data = { a: 1, b: 2, c: 3 }
function deleteData(oldData) {
const updated = {...oldData};
delete updated.a;
return updated;
}
const newData = deleteData(data);
console.log("old data: "+ data)
console.log("new data: "+ newData)
一些参考资料如下:,。我对你想要达到的目标感到非常困惑。您只是试图删除对象的第一个元素?在函数外部定义新数据。或者从函数返回新数据。在您的代码中,您只删除了一个元素,为什么要循环?请不要只发布代码作为答案,还要解释代码的作用以及它如何解决问题。带有解释的答案通常更有帮助,质量更好,更容易吸引选票。
const data = { a: 1, b: 2, c: 3 }
function deleteData(oldData) {
const updated = {...oldData};
delete updated.a;
return updated;
}
const newData = deleteData(data);
console.log("old data: "+ data)
console.log("new data: "+ newData)