javascript - 如何告诉 JavaScript 我的变量是数组而不是字符串?
问题描述
我正在使用烧瓶,我的后端以 python 列表的形式向 AJAX 返回响应,然后 JavaScript 将其理解为字符串,但这是一个问题,因为我必须遍历该列表。
我在互联网上只能找到如何检查变量的类型,但找不到任何方法(在 python 中非常简单)来更改它
解决方案
如果你的响应是一个字符串,你可以用JSON.parse
它来把它变成一个 JS 对象/数组。
var response = someAjaxStuff(...);
// response is a string
response = JSON.parse(response);
// now reponse is an Object/Array
如果您将 AJAX 与 jQuery 一起使用,您还可以使用dataType
:
$.ajax({
url: 'https://example.com/api/somejson',
dataType: 'json',
method: 'get',
success: function(res) {
// console.log res will be an object/array here.
}
});
但是如果您正在编写自己的 API,我建议您必须添加正确的标头以告诉浏览器它是 JSON 格式而不是字符串。
对于烧瓶,您可以使用jsonify
(参考):
return jsonify(somedict)
推荐阅读
- r - 创建每个采样站点的唯一访问列
- android - 使用 Gradle 7.1.0-alpha03 和 Composer 的新 Android 项目无法构建
- excel - Excel - 格式化一个单元格,使其显示另一个单元格的算术表达式
- python - 在 Windows Python 中处理权限被拒绝错误
- xcode13 - XCode 13 beta 2,iOS 15 上的应用安装失败
- python-3.x - 使用 Python 多处理并行加载大型数据集
- c - 如何在编译旧 MUD 时修复 collect2 错误?
- python - 关于数据可视化的简单python问题
- python - 将 .unpack 从 Python 2.7 翻译到 3.9
- r - 借助映射器将组颜色链接到闪亮