es6如何判断一个变量是否为字符串

本篇内容介绍了“es6如何判断一个变量是否为字符串”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

成都创新互联公司-专业网站定制、快速模板网站建设、高性价比鄂伦春网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式鄂伦春网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖鄂伦春地区。费用合理售后完善,十余年实体公司更值得信赖。

判断方法:1、用“typeof 变量=== 'string'”语句;2、用“变量 instanceof String”;3、用“Object.prototype.toString.call(变量)==="[object String]"”。

本教程操作环境:windows7系统、javascript1.8.5版、Dell G3电脑。

es6判断一个变量是否为字符串

方法1:利用typeof关键字

typeof 的语法规则是:typeof operand

我们可以直接使用 typeof a === 'string' 来判断,返回值为true则就是字符串。

示例:

var a="123456";
typeof a === 'string';

var b=123456;
typeof b === 'string';

es6如何判断一个变量是否为字符串

另外,列几个这个操作符比较特殊的情况:

typeof Null; // 'object'
typeof NaN; // 'number'
typeof Array; // 'object'

方法2:利用instanceof关键字

instanceof 的语法规则是 object instanceof constructor。返回值是 boolean 类型。

instanceof 的工作原理是看构造器的 prototype 属性是否存在于该对象的原型链上。这样也就意味着它只能判断对象类型。

如果我们使用 new String("I am string") 这样的方式构造一个字符串,也能使用 instanceof 来判断。如下:

new String("I am string") instanceof String;

es6如何判断一个变量是否为字符串

方法3:Object.prototype.toString.call()

这个方法默认会返回 "[object type]", 其中的 type 就是数据的类型。值得说明的是,我们调用的时候必须要用上 call。

var a="123456";
Object.prototype.toString.call(a) === "[object String]";

var b=123456;
Object.prototype.toString.call(b) === "[object String]";

es6如何判断一个变量是否为字符串

“es6如何判断一个变量是否为字符串”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注创新互联网站,小编将为大家输出更多高质量的实用文章!


本文题目:es6如何判断一个变量是否为字符串
文章出自:http://scyanting.com/article/jhppis.html