我有一个python代码,通过这个代码我可以在所有列表中搜索。我想把代码转换成javaScript 我的python代码是:
cmd_str = '&filter='
fields = {'f1': 'v1', 'f2': None, 'f3': 34, 'f4': datetime.now()}
for f, v in fields.items():
if v is not None:
if type(v) is str:
cmd_str += '%s|%s' % (f, v)
elif type(v) is datetime:
cmd_str += '{}[{}]={}'.format(f, type(v).__name__, v.isoformat())
else:
cmd_str += '{}[{}]={}'.format(f, type(v).__name__, v)
cmd_str += ','
cmd_str = cmd_str[:-1]
print(cmd_str)
我改变了自己,但我有一些问题
^{pr2}$你能帮我解决问题吗? 我不知道这行在javaScript中是可以的:
cmd_str += '%s|%s' % (fields[i][key]);
cmd_str += '{}[{}]={}'.format(f, typeof v.__name__, v.isoformat())
cmd_str += '{}[{}]={}'.format(f, typeof v.__name__, v);
cmd_str += ',';
cmd_str = cmd_str[:-1];
你的代码中没有关于JS的内容
format
函数%
只是数字运算符,不格式化字符串,'string' % anything = NaN
isoformat
函数使用toISOString()
[:index]
样式我想我能看到的错误很少 1) 循环结构错误。我不知道什么是关键。 2) 使用的实例检查日期。因为日期是一个对象,所以当你做typeof(fields.f4)时,它会给你一个对象的结果。现在不需要了。 3) 对于逗号,我在每个条件后加逗号,最后去掉最后一个逗号后取子字符串。 我试过这样的代码。在
我改成了这个代码:
对吗? 我不知道如何修复这行
cmd_str = cmd_str[:-1];
以删除最后一个逗号相关问题 更多 >
编程相关推荐