JavaScript struct类型与valueOf
来源:互联网 发布:网游加速器 for mac 编辑:程序博客网 时间:2024/05/29 13:01
在JS的值的对比中,我们经常会用到valueOf,然于这个方法到底有什么奇特之处呢。下面就来一段valueOf用处示例:
function Card(value) { this.value = value; this.isValid = value>=0 && value < 54;}
再普通不过的一段代码,用来表示一个值是否在0~54之间(不包含54)。但是如果用来跟其它比较大小的话,问题来了,如:
var a = new Card(11);if(a == 11){ console.log("猜对了");}
查看上面的代码,你会发现这值没法比,只能使用:
var a = new Card(11);if(a.value == 11){ console.log("猜对了");}
来进行判断了,如果换作其它语言,你肯定会想到使用 struct 或者 operator,可是在JS中该怎么使用它呢?
其实相比其它语言JS更简单,你只需要使用valueOf就可以实现了。
于是我们加上代码:
Card.prototype = { valueOf:function () { return this.value; }}
再继续执行上面的示例:
var a = new Card(11);if(a == 11){ console.log("猜对了");}
var a = new Card(11);if(a.value == 11){ console.log("猜对了");}
有没有发现,两个都正常输出了啊。哈哈,是不是跟 struct 一样呢?
其实,在JS中valueOf只得到值的类型,当两个值进行比较时,会先通过valueOf获取当前值然后再进行对比。
0 0
- JavaScript struct类型与valueOf
- Javascript中valueOf与toString区别
- Javascript中valueOf与toString区别浅析
- Javascript中valueOf与toString区别
- JavaScript中的valueOf与toString方法
- Javascript中valueOf与toString区别
- struct结构类型与typedef
- JAVA-各种类型之间转换 parse() 与valueOf()
- JAVA-各种类型之间转换 parse() 与valueOf()
- JavaScript中valueOf函数与toString方法深入理解
- JavaScript中valueOf函数与toString方法重写优先级问题
- 简单说 JavaScript中的tostring( ) 与 valueOf( )方法
- Javascript valueOf 使用方法
- JavaScript valueOf() 函数详解
- grpc类型与struct的转换
- String 类型基本转换 valueOf
- toString与String.valueOf()
- Java parseInt与valueOf
- JNA调用dll文件时注意事项
- Python 内建函数小结
- CodeForces 698AVacations(贪心)
- 无法修正错误,因为您要求某些软件…(Linux下载软件源包问题)
- 二维递增子序列
- JavaScript struct类型与valueOf
- 怎样在 CentOS 7.0 上安装和配置 VNC 服务器
- 织梦DedeCMS网站地图优化技巧:生成根目录
- 高仿QQ微信小程序,我趟过的坑
- 设计模式六大原则(3):依赖倒置原则
- 查找某个字符在一个字符串中的位置,假设字符串中的字符是有序的,如“adfgikmnprs”中查找g的位置。(折半查找)
- Java三大特性之多态:从JVM的角度来看多态
- ubuntu——Mysql自动备份脚本
- 求多边形重心