我们需要判断用户输入的是否全是空格,可以使用以下方法:

方法一: 使用trim()

/* 使用String.trim()函数,来判断字符串是否全为空*/
function kongge1(test) {
let str = test.trim();
if (str.length == 0) {
console.log('字符串全是空格');
} else {
console.log('输入的字符串为:' + test);
}
}

如果 trim() 不存在,可以在所有代码前执行下面代码

/* 给String原型链对象添加方法trim */
if (!String.prototype.trim) {
String.prototype.trim = function () {
return this.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, '');
};
} 例如:
/* 使用String.trim()函数,来判断字符串是否全为空*/
function kongge1(test) { /* 给String原型链对象添加方法trim */
if (!String.prototype.trim) {
String.prototype.trim = function () {
return this.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, '');
};
} let str = test.trim();
if (str.length == 0) {
console.log('字符串全是空格');
} else {
console.log('输入的字符串为:' + test);
}
}

方法二: 使用正则表达式

/* 使用正则表达式来判断字符串是否全为空 */
function kongge2(test) {
if(test.match(/^\s+$/)){
console.log("all space or \\n");
}
if(test.match(/^[ ]+$/)){
console.log("all space")
}
if(test.match(/^[ ]*$/)){
console.log("all space or empty")
}
if(test.match(/^\s*$/)){
console.log("all space or \\n or empty")
} else {
console.log('输入的字符串为:' + test);
}
}

案例:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>js判断字符串是否全为空(使用trim函数/正则表达式)</title>
</head>
<body>
姓名:<input type="text" name="userName" id='userName' onblur="check(value)" value="">
<script type="text/javascript">
/*
typeof 检测给定变量的数据类型。
两种写法: typeof(value); typeof value;
可能返回的字符串:
"undefined" --- 如果这个值未定义。
"boolean" --- 如果这个值是布尔值。
"string" --- 如果这个值是字符串。
"number" --- 如果这个值是数值。
"object" --- 如果这个值是对象或者null;
"function" --- 如果这个值是函数。 */
let str = 'str';
alert(typeof abc);//undefined;
alert(typeof undefined);//undefined
alert(typeof check(str));//undefined
alert(typeof '');//string
alert(typeof str);//string
alert(typeof 98);//number
alert(typeof {});//object
alert(typeof null);//object function check(value) {
if ('string' == typeof value) {
kongge1(value);
kongge2(value);
} else {
console.log(typeof value);
console.log('请输入字符串');
}
} /* 使用String.trim()函数,来判断字符串是否全为空*/
function kongge1(test) {
let str = test.trim();
if (str.length == 0) {
console.log('字符串全是空格');
} else {
console.log('输入的字符串为:' + test);
}
} /* 使用正则表达式来判断字符串是否全为空 */
function kongge2(test) {
if(test.match(/^\s+$/)){
console.log("all space or \\n");
}
if(test.match(/^[ ]+$/)){
console.log("all space")
}
if(test.match(/^[ ]*$/)){
console.log("all space or empty")
}
if(test.match(/^\s*$/)){
console.log("all space or \\n or empty")
} else {
console.log('输入的字符串为:' + test);
}
}
</script>
</body>
</html>
 
 

js判断字符串是否全为空(使用trim函数/正则表达式)的更多相关文章

  1. JS判断字符串是否全为中文

    //第一种代码(全为中文则返回"true",不全为中文则返回"false"): <script language="javascript&quo ...

  2. Js判断对象是否为空,Js判断字符串是否为空

    Js判断对象是否为空,Js判断字符串是否为空,JS检查字符串是否为空字符串 >>>>>>>>>>>>>>>&g ...

  3. 【最简单的方法】js判断字符串是否为JSON格式(20180115更新)

    前言 针对 “js判断字符串是否为JSON格式” 这个问题,在网上查了许多资料,都没找到自己想要的答案. 但是看到这个帖子<js判断字符串是否为JSON格式>后,突然灵光一闪,想到一种很简 ...

  4. Jquery 选择器 详解 js 判断字符串是否包含另外一个字符串

    Jquery 选择器 详解   在线文档地址:http://tool.oschina.net/apidocs/apidoc?api=jquery 各种在线工具地址:http://www.ostools ...

  5. JS判断字符串长度的5个方法

    这篇文章主要介绍了JS判断字符串长度的5个方法,并且区分中文和英文,需要的朋友可以参考下 目的:计算字符串长度(英文占1个字符,中文汉字占2个字符)   方法一:    代码如下: String.pr ...

  6. C++ 判断字符串是否全是数字

    在实际的工作中,需要提取程序中的字符串信息,但是程序中经常将一些数字当做字符串来进行处理,例如表盘的刻度信息,这时候就需要判断字符串是否全为数字,来进行真正意义上的字符串提取.下面介绍了判断字符串是否 ...

  7. Oracle中如何判断字符串是否全为数字,以及从任意字符串中提取数字

    本文介绍了判断字符串是否全为数字的4种办法,另外还介绍了一个translate函数的小技巧,从任意字符串中提取数字(调用2次translate函数).这个办法是一个公司同事发现的,用起来很方便,但理解 ...

  8. 【功能代码】---3 JS判断字符串是否包含某个字符串

    JS判断字符串是否包含某个字符串 var str ="abc"; if(str.indexOf("bc")>-1){ alert('str中包含bc字符串 ...

  9. [转]JS判断字符串是否为json数据

    原文地址:https://blog.csdn.net/qq_26400953/article/details/77411520 这周碰到了很多问题,尽量把遇到的问题都记录下来. JS判断字符串是否为j ...

随机推荐

  1. PHP数据访问易错点(20161030)

    易错点: 1.造对象的时候括号里面的参数 写错了 $db = new MySQLi("localhost","root","789",&qu ...

  2. Jmeter 正则提取器

    背景: 用户购买商品,为防止CSRF攻击,在购买请求参数中要携带token参数,token的值是随机加密处理的,每次登录值都会刷新 场景: 用户登录站点,访问商品列表,购买商品 脚本设计: 1.登录 ...

  3. sublime 快速安装多个插件的两种方法[Advanced Install Package]与[Package Control.sublime-settings]

    环境 sublime 3,目前官网下载的sublime3 已经支持自动安装 Package Control . 第一种: ctrl+shift+p 调出命令面板以后 以前都是使用 Package Co ...

  4. SQL基本编程,分支语句,循环语句,存储过程,触发器

    基本编程: 定义变量 declare @变量名 数据类型 赋值 set @变量名 = 值 select @变量名 = 值 取值打印 select @变量名 print @变量名 映射到结果集 打印到消 ...

  5. Codeforces Gym 100269E Energy Tycoon 贪心

    题目链接:http://codeforces.com/gym/100269/attachments 题意: 有长度为n个格子,你有两种操作,1是放一个长度为1的东西上去,2是放一个长度为2的东西上去 ...

  6. (21)IO流之对象的序列化和反序列化流ObjectOutputStream和ObjectInputStream

    当创建对象时,程序运行时它就会存在,但是程序停止时,对象也就消失了.但是如果希望对象在程序不运行的情况下仍能存在并保存其信息,将会非常有用,对象将被重建并且拥有与程序上次运行时拥有的信息相同.可以使用 ...

  7. iOS开发之Segue

    Storyboard上每一根用来界面跳转的线,都是一个UIStoryboardSegue对象(简称Segue). 每一个Segue对象,都有3个属性: (1)唯一标识 @property (nonat ...

  8. iOS开发之状态栏

    从iOS7开始,状态栏默认情况下归控制器管理,比如状态栏的样式.状态栏的是否可见 控制器通过重写以下方法来控制状态栏 设置状态栏的样式,只需重写下列方法即可: - (UIStatusBarStyle) ...

  9. vue学习笔记 模板语法(三)

    <div id="kk"> <div>直接输出文本:{{msg}}</div> <div>自定义过滤器输出文本:{{msg|capi ...

  10. PRINCE2重要性--光环国际培训

    项目的重要性 答:对于当今的组织来说,一个关键的挑战,就是能够成功地平衡以下两个并存的.互相竞争的方面:保持现有的商业运营--盈利能力.服务质量.客户关系.品牌忠实度.生产效率.市场信心等,这些被称为 ...