首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么设置你得不到的财产是合法的?

问为什么设置你得不到的财产是合法的?
EN

Stack Overflow用户
提问于 2014-01-28 20:20:59
回答 1查看 57关注 0票数 2

我想了解为什么允许它在字符串或其他原语上赋值,即使javascript从来不存储这个值。我知道"xyz“与对象(”xyz“)不一样,但是请看这里

代码语言:javascript
复制
var o = "xyz";
o.value = "foo bar";
alert(o.value); // alerts "undefined"

在赋值后,value属性将保持未定义的权利。当o是对象时,value属性将正确赋值,并在警告语句中返回。当o未定义时,赋值该属性将导致TypeError。但是,当o是一个字符串时,什么都不会发生,只是忽略了赋值。好的,在我的例子中o是一个变量,但是"xyz".value = "foo“也是完全合法的吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-01-28 20:22:55

字符串不是对象。这是:

代码语言:javascript
复制
 o.value = "foo bar";

指:

  1. 将"o“的字符串值转换为字符串实例
  2. 将该实例的属性"value“设置为"foo bar”
  3. 抛出字符串对象。
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21415949

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档