资讯专栏INFORMATION COLUMN

【javascript】字符串转换关系及方法

张金宝 / 593人阅读

摘要:在为和时不能调用,所以不是一种通用方法,使用时需谨慎。示例看上面的例子。

其他值转化为字符串的对应关系 其他值转化为字符串的对应关系表:
结果
undefined "undefined"
null "null"
布尔值 false->"false", true->"true"
数字 (如:2.335 ->"2.335"
字符串 无需转换,输入即输出
对象 step1: 先调用ToPrimitive(value, String)方法,将值转化为原始值。step2:再根据上面对应关系,将原始值转换为字符串。
示例

undefined

> String(undefined)
"undefined"

null

> String(null)
"null"

布尔值

> String(false)
"false"
> String(true)
"true"

数字

> String(123)
"123"

字符串

> String("123")
"123"

对象

> String({})    // ({}).toString()->"[object Object]"->"[object Object]"
"[object Object]"
> String([])    // [].toString()->""->""
""
转换为字符串的方法

以下是常见的将值转换为字符串的方法:

String(value)

""+value

value.toString() // undefiendnull不能调用

String(value)""+value 这两种方法很常用。
String(value)最直观。
value.toString()valueundefiendnull时不能调用,所以不是一种通用方法,使用时需谨慎。

示例
String(value) 看上面的例子。

""+value

> ""+undefined
"undefined"
> ""+null
"null"
> ""+false
"false"
> ""+123
"123"
> ""+"ew"
"ew"
> ""+{}
"[object Object]"
> ""+[]
""

value.toString():

> false.toString()
"false"
> 123.toString()
... 123.toString()
> (123).toString()
"123"
> "123".toString()
"123"
> [].toString()
""
> ({}).toString()
"[object Object]"

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/81037.html

相关文章

  • javascript系列】布尔类型转换

    摘要:基本值原始值原始的布尔类型有两个值和。创建布尔值的方式直接用字面量用函数,将其他任意值转换成对应的原始布尔值。使用两次非运算符,将其转换成对应的布尔类型。下面来看一些将其他类型转换成布尔类型的例子。 基本值(原始值) 原始的布尔类型boolean有两个值: false 和 true。 > typeof false boolean > typeof true boolean 创建布尔值的...

    wangxinarhat 评论0 收藏0
  • JavaScript高级程序设计学习笔记三(基本语法)

    摘要:数据类型中有种简单数据类型也称为基本数据类型和。在中非空字符串,非零数字,任意对象,都被认为。而空字符串,和,,认为是。用于表示整数和浮点数。标识符由数字字母下划线美元符组成,但首字母不能是数字。变量方法对象命名推荐驼峰法。 JavaScript语法 一.语法简介 因为JavaScript语法和Java等语法非常类似。所以只是简单介绍一下。 大小写 JavaScript是大小写敏感的语...

    Mike617 评论0 收藏0
  • JavaScript是如何工作的:深入类和继承内部原理+Babel和 TypeScript 之间转换

    摘要:下面是用实现转成抽象语法树如下还支持继承以下是转换结果最终的结果还是代码,其中包含库中的一些函数。可以使用新的易于使用的类定义,但是它仍然会创建构造函数和分配原型。 这是专门探索 JavaScript 及其所构建的组件的系列文章的第 15 篇。 想阅读更多优质文章请猛戳GitHub博客,一年百来篇优质文章等着你! 如果你错过了前面的章节,可以在这里找到它们: JavaScript 是...

    PrototypeZ 评论0 收藏0
  • JavaScript高级程序设计》笔记:基本概念

    摘要:一写在前面最近重读高级程序设计,总结下来,查漏补缺。但这种影响是单向的修改命名参数不会改变中对应的值。这是因为对象的长度是由传入的参数个数决定的,不是由定义函数时的命名参数的个数决定的。实际改变会同步,改变也会同步 一、写在前面 最近重读《JavaScript高级程序设计》,总结下来,查漏补缺。 二、JS简介 2.1 JS组成 ECMAscript:以ECMA-262为基础的语言,由...

    ygyooo 评论0 收藏0
  • JavaScript 关于this的几道面试题介绍

    摘要:对象方法中的当以对象里的方法的方式调用函数时,它们的是调用该函数的对象。注意,在何处或者如何定义调用函数完全不会影响到的行为。在这次执行期间,函数中的将指向。 原文链接 与其他语言相比,函数的this关键字在JavaScript中的行为略有不同。并且它在严格模式和非严格模式之间也有一些区别。 在绝大多数情况下,函数的调用方式决定了this的值。this不能在执行期间被赋值,在每次函数被...

    lifefriend_007 评论0 收藏0

发表评论

0条评论

张金宝

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<