obj.field与obj[field]的区别

  obj为一个对象,如果它的一个属性名字为field,则使用obj.field可以访问成功,而使用obj[field]则会报错,原因是由于在中括号中的内容会被解析成变量,因为field变量没有定义就会报错,所以可以使用obj[‘field’]来访问该变量

  如果field为变量,那么要动态访问obj的属性,只能使用obj[field],就不能使用obj.field了,否则,它会报错

时间: 2024-10-22 04:28:40

obj.field与obj[field]的区别的相关文章

关于对象方法的类型总结obj.name 和 obj[name]的区别

在js中,经常会用到对象方法,比如json的使用. 我们在使用json的时候,对象的方法的数据类型不一定是object,也就是说,可能是拼接成的字符串(需要改变对象方法的时候),也有可能是数字,等... 今天在项目中遇到了一些问题,在这里总结一下. 1.对象中的方法的数据类型是object var obj = [name:val]; 如果name是object的话,可以使用obj.name或者obj[name]都可以取到val值 2.对象中的方法的数据类型不是object 同上 var obj

[field:picname/]和[field:litpic/]区别

显示出二级栏目及以下的所有图片(包含三级栏目的) <ul class="incps"> {dede:arclist row=9 col="3" typeid='3' titlelen=15 type='image.'imgwidth='234' imgheight='214'} <li><a href="[field:arcurl/]" class="btc" ><img src=&q

C#类型转换obj.ToString()、Convert.ToString(obj)、(string)obj、obj as string差异

C#下有4中方式可将一个对象转换为string: object obj = ""; string str; str = obj.ToString(); str = Convert.ToString(obj); str = (string)obj; str = obj as string; 1. 前两种方法用于得到一个对象的string表示,如DateTime类型转string类型,一般自定义对象会重写ToString()方法: 2. 区别在于若obj=null,obj.ToString

[Struts2] No result defined for action ... and result input &amp; Invalid field value for field ...

"No result defined for action ... and result input"错误一般发生在Struts2的拦截器拦截时遇到了问题时,Struts2会将跳转到result为input的视图上,但是在配置文件中并没有给这个Action配置input的result.可以建立一个内容为如下的Jsp文件,并在配置文件中配置result为input时跳转此文件,将会显示出具体的错误原因. <div style="color:red"> &l

报错:struts之invalid field value for field

在表单中输入数据提交时提示invalid field value for field "product.sale Date".(product.sale是文本框的名字,Date是其数据类型) 原因:输入数据的格式错误. 希望:将提示改为,如:"格式错误,请输入正确的格式". 方法:使用国际资源, PS:国际资源使用方法 http://www.cnblogs.com/yexiaodong/p/3702765.html 报错:struts之invalid field v

OpenGL学习脚印:模型加载初步-加载obj模型(load obj model)

写在前面 前面介绍了光照基础内容,以及材质和lighting maps,和光源类型,我们对使用光照增强场景真实感有了一定了解.但是到目前为止,我们通过在程序中指定的立方体数据,绘制立方体,看起来还是很乏味.本节开始介绍模型加载,通过加载丰富的模型,能够丰富我们的场景,变得好玩.本节的示例代码均可以在我的github下载. 加载模型可以使用比较好的库,例如obj模型加载的库,Assimp加载库.本节作为入门篇,我们一开始不使用这些库加载很酷的模型,而是熟悉下模型以及模型加载的概念,然后我们封装一个

文件上传时异常Invalid field value for field &quot;**&quot;与enctype=&quot;multipart/form-data&quot;

在做文件上传时,有一个form标签的属性必须要加上. 文件上传的form若如下面所写,则会报异常:Invalid field value for field "**",原因是:表单中enctype="multipart/form-data"的意思,是设置表单的MIME编码.默认情况,这个编码格式是application/x-www-form-urlencoded,不能用于文件上传:只有使用了multipart/form-data,才能完整的传递文件数据,进行下面的操

[Struts2] No result defined for action ... and result input &amp;amp; Invalid field value for field ...

"No result defined for action ... and result input"错误一般发生在Struts2的拦截器拦截时遇到了问题时.Struts2会将跳转到result为input的视图上,可是在配置文件里并没有给这个Action配置input的result. 能够建立一个内容为例如以下的Jsp文件.并在配置文件里配置result为input时跳转此文件.将会显示出详细的错误原因. <div style="color:red">

Huge CSV and XML Files in Python, Error: field larger than field limit (131072)

Huge CSV and XML Files in Python January 22, 2009. Filed under python twitter facebook pinterest linkedin google+ I, like most people, never realized I'd be dealing with large files. Oh, I knew there would be some files with megabytes of data, but I

Struts2 莫名其妙的Invalid field value for field 的异常

今天在开发系统时候,又出现了一个奇葩的Struts2 异常--Invalid field value for field ['phId'] Jsp代码:phId 的类型是Int <s:hidden name="phId" value="phId"/> Action 中用来接收的属性值: private Integer phId; //此处省略了Getter/Setter方法 按常理来说.应该是可以接收到数据的: 难道人品差原因嘛!Action 里面phI