确定对象属性名称是否为数字
Determining if object property name is a number
具有具有多个属性属性的Object
{
...,
attributes:{
[0]: "Capricorn One",
[1]: "Total Recall",
"name": "Jerry Goldsmith"
}
}
我想确定其中哪些是数字键,哪些不是。
目前我正在这样做:
for d of data.attributes
prop = parseInt(d)
if !_.isNaN(prop)
# property is a number
我想知道是否有更好/更有效的方法来做同样的事情?
您现有的方法很好,但您可以通过删除parseInt
调用来对其进行微调。isNaN
将为您做到这一点:
for d of data.attributes
if !_.isNaN(d)
# property is a number
根据规范(增加重点):
如果参数强制为NaN,则返回true,否则返回false。
- 如果ToNumber(数字)为NaN,则返回true
- 否则,返回false
您也可以使用本机isNaN
而不是Undercore版本,因为d
永远不会是undefined
:
for d of data.attributes
if !isNaN(d)
# property is a number
相关文章:
- 测试索引值是否等于某个数字的倍数
- jquery检查数字是否键入了isNaN
- 一个jquery验证器方法,它不接受纯数字或纯特殊字符,但接受上面是否有字母
- 是否可以在数字输入框中的小按钮中添加事件侦听器
- 是否可以在javascript中执行“;数字加负数”;
- ==是否创建垃圾?(将字符串与数字进行比较时)
- 试图检查表单中的值是否为一个设定范围内的数字
- 使用 Javascript 检查文本区域值是否为数字
- 货币过滤器是否仅适用于使用 $scope.$eval() 的数字
- jQuery 验证输入文本是否仅接受数字、单词或日期
- 检查字符串是否等于一个单词和一个数字
- 检查输入是否都是数字html javascript
- 检查给定的数字是否属于node.js中的Fibonacci序列
- 验证数字是否在0.00到20.00之间的正则表达式
- 如何在javascript中测试字符串是否包含带正则表达式的数字
- javascript测试一个值是否是一个数字和一个大于0的数字
- 如何在函数中编写 if/else 语句,告诉我一个数字是否可以被 2 整除(在 javascript 中)
- Javascript正则表达式,用于检查字符串是否为有效数字
- 验证javascript中的输入是否在2个数字之间
- 当一些文本粘贴到文本框中时(没有设置超时),是否检查数字