从 javascript 钛数组中删除项目
Remove the item from array in javascript titanium
这是我的 json 数组:
var myObjectString = JSON.stringify(data);
Ti.API.info("PRICE" + " " + myObjectString);
[{
"name": "Bajaj 200 mm Ultima PT01 Personal Fan",
"image": "/images/T/xctmpQmkaHM.png",
"totalPrice": 999,
"itemPrice": 999,
"itemCount": 1
}]
这里我需要删除图像元素(键+值)并存储如下值:
[{
"name": "Bajaj 200 mm Ultima PT01 Personal Fan",
"totalPrice": 999,
"itemPrice": 999,
"itemCount": 1
}]
我该怎么办?我需要将这个结果保存在另一个变量中吗?我能怎么做 ?我怎样才能得到上面的结果。
编辑:
来自 Alex Alksne 评论:
静态分配的代码工作正常。
但是,如果我们动态分配一个值,则意味着它不起作用。
var myObjectString = JSON.stringify(data);
console.log(myObjectString);
delete myObjectString[0].image;
console.log(myObjectString);
[{"name":"Bajaj 200 mm Ultima PT01 Personal Fan","image":"/images/T/xctmpQmkaHM.png","totalPrice":999,"itemPrice":999 ,"itemCount":1}]
[{"name":"Bajaj 200 mm Ultima PT01 Personal Fan","image":"/images/T/xctmpQmkaHM.png","totalPrice":999,"itemPrice":999 ,"itemCount":1}]
要删除 Javascript 对象中的键和值,您需要使用 delete
关键字(简单地分配 PRICE[0].image = undefined
只会删除值)。
例如,如果您的数据结构如下所示:
var myObject;
myObject =
[{
"name": "Bajaj 200 mm Ultima PT01 Personal Fan",
"image": "/images/T/xctmpQmkaHM.png",
"totalPrice": 999,
"itemPrice": 999,
"itemCount": 1
}]
您可以删除图像 key/value 对,方法是编写:delete myObject[0].image
。现在,如果你 console.log(myObject)
,你会得到:
[{
"name": "Bajaj 200 mm Ultima PT01 Personal Fan",
"totalPrice": 999,
"itemPrice": 999,
"itemCount": 1
}]
请记住,delete
关键字仅适用于对象,不适用于字符串。如果你的数据原来是字符串形式,你必须先JSON.parse(myObject)
,然后才能对它使用delete
。例如:
var myObjectString =
'[{
"name": "Bajaj 200 mm Ultima PT01 Personal Fan",
"image": "/images/T/xctmpQmkaHM.png",
"totalPrice": "999",
"itemPrice": "999",
"itemCount": "1"
}]'
var myObject = JSON.parse(myObjectString);
delete myObject[0].image;
尝试 "delete" 作为..
delete PRICE[0].image;
这是我的 json 数组:
var myObjectString = JSON.stringify(data);
Ti.API.info("PRICE" + " " + myObjectString);
[{
"name": "Bajaj 200 mm Ultima PT01 Personal Fan",
"image": "/images/T/xctmpQmkaHM.png",
"totalPrice": 999,
"itemPrice": 999,
"itemCount": 1
}]
这里我需要删除图像元素(键+值)并存储如下值:
[{
"name": "Bajaj 200 mm Ultima PT01 Personal Fan",
"totalPrice": 999,
"itemPrice": 999,
"itemCount": 1
}]
我该怎么办?我需要将这个结果保存在另一个变量中吗?我能怎么做 ?我怎样才能得到上面的结果。
编辑:
来自 Alex Alksne 评论:
静态分配的代码工作正常。
但是,如果我们动态分配一个值,则意味着它不起作用。
var myObjectString = JSON.stringify(data);
console.log(myObjectString);
delete myObjectString[0].image;
console.log(myObjectString);
[{"name":"Bajaj 200 mm Ultima PT01 Personal Fan","image":"/images/T/xctmpQmkaHM.png","totalPrice":999,"itemPrice":999 ,"itemCount":1}]
[{"name":"Bajaj 200 mm Ultima PT01 Personal Fan","image":"/images/T/xctmpQmkaHM.png","totalPrice":999,"itemPrice":999 ,"itemCount":1}]
要删除 Javascript 对象中的键和值,您需要使用 delete
关键字(简单地分配 PRICE[0].image = undefined
只会删除值)。
例如,如果您的数据结构如下所示:
var myObject;
myObject =
[{
"name": "Bajaj 200 mm Ultima PT01 Personal Fan",
"image": "/images/T/xctmpQmkaHM.png",
"totalPrice": 999,
"itemPrice": 999,
"itemCount": 1
}]
您可以删除图像 key/value 对,方法是编写:delete myObject[0].image
。现在,如果你 console.log(myObject)
,你会得到:
[{
"name": "Bajaj 200 mm Ultima PT01 Personal Fan",
"totalPrice": 999,
"itemPrice": 999,
"itemCount": 1
}]
请记住,delete
关键字仅适用于对象,不适用于字符串。如果你的数据原来是字符串形式,你必须先JSON.parse(myObject)
,然后才能对它使用delete
。例如:
var myObjectString =
'[{
"name": "Bajaj 200 mm Ultima PT01 Personal Fan",
"image": "/images/T/xctmpQmkaHM.png",
"totalPrice": "999",
"itemPrice": "999",
"itemCount": "1"
}]'
var myObject = JSON.parse(myObjectString);
delete myObject[0].image;
尝试 "delete" 作为..
delete PRICE[0].image;