js 中的原始值和对象

js中数据类型:原始值(null、 undefined、 布尔值、 数字 、字符串)与对象

原始值不可改变。对象可变也就是值是可以修改的。


对象转化为原始值:

1、对象转为boolean。

所有的对象转为boolean 都为 `true` 

2、对象转化为string

所有的对象都继承了两个方法:1.toString() 2.valueOf()。 先使用toString()方法,如果对象没有toString方法。则使用valueOf()

2.1 toString

很多类定义特定的版本的toString 方法。

比如 

数组类的toString: [1,2,3].toString()  // =>"1,2,3"

函数类的toString:将用户定义的函数转化为源代码字符串  

日期类的toString: 返回一个可读的日期和视觉字符串

3、对象转化为number

与转为String类似 。只是 先使用valueOf()方法,如果对象没有valueOf方法。则使用toString()。否则抛异常。

这就解释了String([])  为 ' '  Number([]) 为 0

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 第2章 基本语法 2.1 概述 基本句法和变量 语句 JavaScript程序的执行单位为行(line),也就是一...
    悟名先生阅读 4,275评论 0 13
  • 前言 最先接触编程的知识是在大学里面,大学里面学了一些基础的知识,c语言,java语言,单片机的汇编语言等;大学毕...
    oceanfive阅读 3,203评论 0 7
  • 9.正则表达式 首先,js定义了RegExp()构造函数,用来创建表示文本匹配模式的对象。这就是正则表达式。正则表...
    我就是z阅读 739评论 0 5
  • 俗言:“头光面靓,一肚暗病。”说的自然是那些徒有其表,而心术不正的人。 在我人生的历程中,于日常生活里,我曾经遇到...
    雁韧阅读 1,203评论 7 24
  • 昨天,正在热恋中的朋友兴高采烈地跟我分享:她发的所有动态,无论是朋友圈还是微博,男友都会回复。 “他好爱我哦,居然...
    渔三姑娘阅读 327评论 0 0