在Javascript中,如果一个对象有一个字符键,那么该键的长度可以是1以外的任何值
In Javascript, if an object has a key which is a character, can the .length of that key ever be anything other than 1?
假设我们有一个字符串unknownStr
,它的未知值不是undefined
也不是null
。
假设我们有这样的代码:
var chrArray = [];
var keyValObject = {};
var keyLength;
for (var i = 0; i < unknownStr.length; i++) { chrArray.push(unknownStr[i]); }
for (var i = 0; i < chrArray.length; i++) { keyValObject[chrArray[i]] = "foo"; }
for (var key in keyValObject) { keyLength = key.length; }
keyLength
是否可能具有1
以外的值?
是的,这是可能的,可以如下所示
Object.prototype.longKey = "foo";
现在,所有对象都将具有属性longKey
,包括keyValObject
。因为您没有将for
循环中的key
值限制为hasOwnProperty
,所以它最终会看到长度大于1 的longKey
相关文章:
- AJAX:$_GET不返回任何值
- 表单未使用 MVC 提交任何值 Asp.Net
- 如果没有从下拉列表中选择任何值,则允许使用php、mysql、javascript将文本框添加到mysql表中
- 如何将按钮的数据属性设置为输入[type=text]中设置的任何值
- 为什么当订阅两次rx 2.3中的observable时,第二次订阅没有收到任何值
- WebKitBrowser.StringByEvaluatingJavaScriptFromString 不返回任何值
- 下拉列表中的选定索引在未选择任何值时引发错误
- 日期-时间范围指令字段未显示任何值
- Javascript函数不返回任何值
- ng重复不显示任何值
- Ng模型重写我在AngularJS的输入字段中输入的任何值
- 无限循环当观察父对象时,观察者不更新任何值
- 在Javascript中,如果一个对象有一个字符键,那么该键的长度可以是1以外的任何值
- 整理代码:检查多个值,如果找到任何值,则返回null
- 输入复选框数组,如果未选中,jQuery不会发送任何值
- jQuery自动完成没有'如果未选择任何值,则t点火
- 如果未返回任何值,则保持货币格式的JQgrid单元格为空,不带默认值
- 为什么选择框不张贴任何值,如果用户没有选择的选择
- 如何从数组中搜索数据,如果匹配数组中任何值的任何字符使用Javascript
- 如果我们're处于默认状态,并且没有选择其他选项,则不执行任何操作.如果从其他选项中恢复到默认值,请采取措施