zoukankan      html  css  js  c++  java
  • 对象的方法

      所有Javascript对象都从Object.prototype继承属性(除了那些不通过原型显示创建的对象)。这些继承属性主要是方法,而有些方法非常好用且使用广泛,但一些类会重写它。

    toString() 方法

      没有参数,将返回一个调用该方法的对象值的字符串。在需要将对象转换为字符串的时候,JavaScript都会调用该方法。比如,当使用 “+” 运算符连接一个字符串和一个对象时,或者在希望使用字符串的方法中使用了对象时都会调用toString()。

      由于默认的toString()方法并不会输出很多有用的信息,因此很多类都带有自定义的toString()。例如,当数组转换为字符串的时候,结果是一个数组元素列表,只是每个元素都转换成了字符串,再比如,当函数转换成字符串的时候,得到函数的源代码。

    toLocaleString() 方法

      返回一个表示这个对象的本地化字符串。Object中默认的toLocaleString() 方法并不做任何本地化自身的操作,它仅调用toString()方法并返回对应值。Date和Number类对toLocaleString()方法做了定制,可以用它对数字、日期和时间做本地化的转换。Array类的toLocaleString()方法和toString()方法很像,唯一的不同是每个数组元素会调用toLocaleString()方法转换为字符串,而不是调用各自的toString() 方法。

    toJSON() 方法

      Object.prototype实际上并没有定义toJSON方法,但对于需要执行序列化的对象来说,JSON.stringify() 方法会调用toJSON()方法。如果在待序列化的对象中存在该方法,则调用它,返回值即是序列化的结果,而不是序列化原始的对象

    var a = {
      toJSON: function() { return 1; },
    };
    JSON.stringify(a);  // => "1"
    var a = {
      x: function() { return 1; },
    };
    JSON.stringify(a);  // => "{}"

    valueOf() 方法

    valueOf() 方法和toString() 方法非常类似,但往往当Javascript需要将对象转换为某种原始值而非字符串的时候才会调用它,尤其是转换为数字的时候。如果在需要使用原始值的上下文中使用了对象,Javascript就会自动调用这个方法。有些内置类自定义了valueOf()方法(比如Date.valueOf())。

    参考文献: JavaScript权威指南 第6版

  • 相关阅读:
    E: 未发现软件包 install_flash_player_11_linux.x86_64.tar.gz
    E: 无法获得锁 /var/lib/apt/lists/lock
    axis1.4与myeclipse开发webservice
    WSDLToJava Error: Rpc/encoded wsdls are not supported with CXF
    org.hibernate.MappingException
    JavaScript控制输入框只能输入非负正整数
    JavaScript控制输入框中只能输入中文、数字和英文
    java.lang.ClassCastException:java.math.BigDecimal cannot be cast to java.lang.String
    更改现有索引的表空间
    Ping 1000个包看丢跑率
  • 原文地址:https://www.cnblogs.com/wssjzw/p/10745953.html
Copyright © 2011-2022 走看看