javascript - 如何将 PHP JSON 转换为 JS 数组

标签 javascript php arrays json

美好的一天,

我有从 PHP 查询中获得的数据,它当前是 JSON 格式,现在我想将其转换为数组,以便我可以在我的 pdf 中使用它。我怎样才能做到这一点?

所以为了让我在我的 javascript 上使用它,我使用了

var inventory = <?php echo json_encode($inventory); ?> ;

我的 JSON 数据:

var inv = [
{"xid":96,"xitem":"CARBOCISTEINE 500MG CAP (MYREX) BOX",
"itemId":852,
"price":3,
"mprice":3
 },
{"xid":253,"xitem":"CIPROFLOXACIN 500MG TAB (PROSELOC\/FLAMINGO)",
 "itemId":1165,
 "price":0,
 "mprice":0
 }];

我试过了

var rows = <?php echo json_encode($inventory); ?> ;
var arr = $.map(rows, function(el) { return el; });

当我console.log(arr); 我仍然得到对象结构而不是我想要的数组结构。

我也尝试过

var result = [];

for(var i in rows)
    result.push([i, rows [i]]);

console.log(result);

但它给了我

[ ["0",Object { xid=96,xitem="CARBOCISTEINE 500MG CAP (MYREX) BOX",itemId=852,price=3,mprice=3}],
["1",Object{etc..}]];

相反

我希望它有这样的结构

[96,"羧甲司坦 500MG CAP (MYREX) 盒",852,3,3], [253,"环丙沙星 500MG TAB (PROSELOC\/FLAMINGO)",1165,0,0]

我的代码中是否缺少某些内容或者我应该如何做到这一点?谢谢..

最佳答案

你可以使用这个:

var arr = inv.map(function (obj) {  return [obj.xid, obj.xitem, obj.itemId, obj.price, obj.mprice]})
console.log(arr);

如果你对 map 回调函数做一些小的改变,那就没问题了。

关于javascript - 如何将 PHP JSON 转换为 JS 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32667223/

相关文章:

javascript - 基本 JavaScript 问题 - 事件处理程序未调用该函数?

javascript - 替换字符串中匹配模式的最后一个实例

php - 从数据库中选择两个日期之间的行给出错误的结果

javascript - 从重复对象数组中返回最新值

c - 可变长度的字符串到int数组?

javascript - 用 React 调用 API 的最佳实践是什么

javascript - localStorage数据存储时间

php - JQuery 多重过滤器

php - 无法使用 GnuPG 在 PHP 中加密

ios - SWIFT 中的元组数组作为函数的参数