用JavaScript注意到的一件事是,当你创建对象时,你可以定义字符串以外的键:
var o = {name : "lingling"} object
在JavaScript中,这是有效的。在Python中,你会得到一个NameError:
>>> o = {name: "lingling"} Traceback (most recent call last): File "<input>", line 1, in <module> NameError: name 'name' is not defined
通常这不是一个大问题,除非你想使用JavaScript根据变量中的值创建对象键。这意味着这段代码在Python中可以正常工作
>>>status= "name" >>> o = {status: "lingling"} >>> o["status"] "lingling"
但是在JavaScript中失败:
> var status="name" "name" > var o = {status:"lingling"} Object > o["state"] undefined
这意味着如果要在JavaScript中动态定义对象键,则需要添加一行代码:
> var status="name" "name" > var o = {} Object > o[status] = "lingling" > o["status"] "lingling"
总结:
- Python在如何处理命名对象方面是一致的。如果你没有命名,Python会抛出NameError。
- JavaScript似乎发出一个未定义的,除非你定义一个对象。