资讯专栏INFORMATION COLUMN

【javascript】字符串及判断方法

goji / 718人阅读

摘要:字符串是不可变的。字符串字面量以及函数作为普通函数调用时的返回值,这两种情况下得到的是字符串原始值。判断字符串原始值方法为得到即字符串原始值由构造器函数得到的是字符串对象。

字符串是不可变的。

每个字符是一个16位的UTF-16编码单元,这意味着一个Unicode字符相当于一个或两个JavaScript字符。

字符串字面量

即用单引号双引号括起来的字符序列。

"string text"
"string text"
"中文 español English हिन्दी العربية português বাংলা русский 日本語 ਪੰਜਾਬੀ 한국어"
字符串对象
new String(thing)

String()构造函数得到字符串对象

> var s = new String(123)
> typeof s
"object"
> 
对原始字符串和 String 对象的区分

区分两者很简单。

字符串字面量 以及 String()函数作为普通函数调用时的返回值,这两种情况下得到的是字符串原始值。

判断字符串原始值方法为typeof "xxx",得到‘string’,即

> typeof "ad"
"string"    // 字符串原始值

new String()构造器函数得到的是字符串对象。

判断字符串对象的方法也为typeof "xxx", 得到‘object’,即

> var s = new String(123)
> typeof s
"object"    // 字符串对象
> 

最重要一点,字符串原始值也可以调用字符串对象所具有的方法,因为JavaScript内部会自动将字符串原始值转化为字符串对象,以调用相关方法,然后恢复。

判断某值是否为字符串 判断某值是否为字符串原始值或字符串对象
function isString (value) {
    return Object.prototype.toString.call(value) === "[object String]";
}
判断某值是否为字符串原始值
function isStringPrimitive (value) {
    return typeof value === "string";
}
判断某值是否为字符串对象
function isString (value) {
    return Object.prototype.toString.call(value) === "[object String]" && typeof value === "object";
}

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

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

相关文章

  • task0002(一)- JavaScript数据类型语言基础

    摘要:不过让流行起来的原因应该是是目前所有主流浏览器上唯一支持的脚本语言。经过测试,数字字符串布尔日期可以直接赋值,修改不会产生影响。再考虑对象类型为或者的情况。对于结果声明其类型。判断对象的类型是还是,结果类型更改。 转载自我的个人博客 欢迎大家批评指正 1. 第一个页面交互 这里最需要学习的老师的代码中,每一部分功能都由函数控制,没有创建一个全部变量。且最后有一个函数来控制执行代码...

    elarity 评论0 收藏0
  • JavaScript数据类型语言基础--ife

    摘要:判断是否为一个函数,返回一个值。使用递归来实现一个深度克隆,可以复制一个目标对象,返回一个完整拷贝被复制的对象类型会被限制为数字字符串布尔日期数组对象。经过测试,数字字符串布尔日期可以直接赋值,修改不会产生影响。再考虑对象类型为或者的情况。 //判断arr是否为一个数组,返回一个bool值 首先javascript有5大基本数据类型:Undefined,Null,Boolean,Num...

    RayKr 评论0 收藏0
  • javascript系列】布尔类型转换

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

    wangxinarhat 评论0 收藏0
  • JavaScript基础系列--数据类型类型判断

    摘要:中有五种基本数据类型,以及一种复杂引用类型数据类型,中还细分了很多具体的类型,比如等等中又新增了一种类型。类型的数值范围是,超出这个范围的值为,可以使用函数来判断数值是否在范围内。 ECMAScript5中有五种基本数据类型:Undefined,Null,Boolean,Number,String,以及一种复杂(引用类型)数据类型:Object,Object中还细分了很多具体的类型,比...

    duan199226 评论0 收藏0
  • JavaScript 数组方法集合示例!

    摘要:数组的创建以下是创建数组的几种方式数组的新增和删除常用的方法对常见场景的概述以及用于每个场景的方法。我是小智,公众号大迁世界作者,对前端技术保持学习爱好者。 想阅读更多优质文章请猛戳GitHub博客,一年百来篇优质文章等着你! 数组基础知识 你应该知道数组是什么,但以下是一个简单的概述:数组就像放东西的盒子,你可以放进东西(新增),拿出东西(删除)或者摆放它们的位置及拿出我们想要的东西...

    wemall 评论0 收藏0

发表评论

0条评论

goji

|高级讲师

TA的文章

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