位置:首页 > 软件操作教程 > 编程开发 > JavaScript > 问题详情

JavaScript 使用 valueOf()

提问人:刘团圆发布时间:2020-11-25

■知识点

valueOfO方法能够返回对象的值。主要用途:JavaScript自动类型转换时会默认调用这个方法。Object对象默认valueOfO方法返回值与toStringO方法返回值相同,但是部分类型对象重写了valueOf()方法。

■实例设计

在下面的示例中,当获取自定义类型的对象p时,console.log()方法会首先调用valueOf()方法,而不是toStringO方法,如果需要获取该对象的字符串表示,则应明确调用对象的toStringO方法。

function Point(x,y){                             //自定义数据类型

    this.x = x; 

    this.y = y;

}

Point.prototype.valueOf = function(){       //自定义Point数据类型的valueOf()方法

    return "(" + this .x + "," + this.y + ")";

}

Point.prototype.toString = function(){       //自定义Point数据类型的toString()方法

    return "[object Point]";

}

var p = new Point(26,68);                            //实例化对象

console.log("typeof p = n + p);                 //默认调用valueOf()方法进行类型转换

console.log("typeof p = n + p.toString ());   //直接调用toString()方法进行类型转换

继续查找其他问题的答案?

相关视频回答
回复(0)
返回顶部