zoukankan      html  css  js  c++  java
  • toString 和 valueOf 总结

    两者的共同点与不同点:

      共同点:二者都能用来数据转换,并且在输出对象时会自动调用。

      不同点:二者并存的情况下,在数值运算中,优先调用了valueOf,字符串运算中,优先调用了toString,没有操作运算符的情况下,优先调用toString

     

     

    所有对象继承了两个转换方法:

     

    toString(),主要是把对象转换为字符串;

     

    valueOf(),主要把对象转换成一个基本数据的值;

    例子:

     

    var obj = {};
     obj.valueOf = function()
     {
     return 10;
     }
     obj.toString = function()
     {
     return "return value";
     }
     
     var result = obj + 1;  
    alert(result);//var result = obj.valueOf() + 1;
    
     alert(obj); //alert(obj.toString());

     

    例子2

    function obj()
     { }
     obj.prototype.toString = function(){
      return 'dfsf';
     };
     obj.prototype.valueOf = function(){
      return '3333';
     };
     var e = new obj();
     var o = new obj();
     alert(o);//alert(obj.toString())   //'dfsf'
     alert(o+e);//alert(obj.valueOf()+obj.valueOf()) //'3333'+'3333'

     

     

     

     

  • 相关阅读:
    租房子查询练习
    投票练习题
    多条件查询
    查询
    练习---新闻界面
    mysql增删改处理
    挖宝游戏
    mysql数据访问
    练习···表格
    类的使用
  • 原文地址:https://www.cnblogs.com/web-fusheng/p/6801106.html
Copyright © 2011-2022 走看看