浅谈js中变量初始化


Posted in Javascript onFebruary 03, 2015

我在js里面写了一个去除首尾空格及特定字符的函数。代码如下:

function trim(str, charlist) {

    return str.replace(new RegExp('^[\\s'+charlist+']+|[\\s'+charlist+']+$', 'g'), '');

}

代码看上去没有什么问题,运行起来也没有错误。

直到今天,我在搜索栏里搜索“note3”的时候,才发现,地址栏里搜索的内容变成了“ote3”,而其他字母或者是数字开头则是正常的,搜索什么,地址栏里的内容就是什么。

调试过代码之后,将代码改为:

function trim(str, charlist) {

    var charlist = charlist || "";

    return str.replace(new RegExp('^[\\s'+charlist+']+|[\\s'+charlist+']+$', 'g'), '');

}

在函数中增加了对charlist的初始化。在次搜索“note3”,结果正确。

虽然js是弱类型语言,使用变量并不要求一定要初始化,运行的时候,代码会自动转换并赋值。但是这样做会引起一些意想不到的问题,因此,对所有使用到的变量进行初始化,是非常有必要的。

今天就先到这里了,希望小伙伴们能够喜欢。

Javascript 相关文章推荐
mouse_on_title.js
Aug 25 Javascript
javascript数组去重的六种方法汇总
Aug 16 Javascript
js实现简单的手风琴效果
Feb 27 Javascript
JS简单获取当前日期时间的方法(如:2017-03-29 11:41:10 星期四)
Mar 29 Javascript
JS使用插件cryptojs进行加密解密数据实例
May 11 Javascript
Angular入口组件(entry component)与声明式组件的区别详解
Apr 09 Javascript
详解Vue开发微信H5微信分享签名失败问题解决方案
Aug 09 Javascript
微信小程序实现上传图片裁剪图片过程解析
Aug 22 Javascript
解决layer弹出层msg的文字不显示的问题
Sep 11 Javascript
vue表单数据交互提交演示教程
Nov 13 Javascript
vue+elementUI(el-upload)图片压缩,默认同比例压缩操作
Aug 10 Javascript
vue递归实现树形组件
Jul 15 Vue.js
jquery实现submit提交表单
Feb 03 #Javascript
jQuery实现跨域
Feb 03 #Javascript
JavaScript错误处理
Feb 03 #Javascript
js实现右下角提示框的方法
Feb 03 #Javascript
Node.js中child_process实现多进程
Feb 03 #Javascript
jquery实现增加删除行的方法
Feb 03 #Javascript
自定义函数实现IE7与IE8不兼容js中trim函数的问题
Feb 03 #Javascript
You might like
PHP编程中八种常见的文件操作方式
2006/11/19 PHP
不错的PHP学习之php4与php5之间会穿梭一点点感悟
2007/05/03 PHP
php实现删除空目录的方法
2015/03/16 PHP
PHP写的简单数字验证码实例
2017/05/23 PHP
jQuery1.6 使用方法二
2011/11/23 Javascript
JS实现仿微博可关闭弹出层效果
2015/09/21 Javascript
13个PHP函数超实用
2015/10/21 Javascript
SpringMVC返回json数据的三种方式
2015/12/10 Javascript
Zero Clipboard实现浏览器复制到剪贴板的方法(多个复制按钮)
2016/03/24 Javascript
全面了解javascript中的错误处理机制
2016/07/18 Javascript
对Js OOP编程 创建对象的一些全面理解
2016/07/26 Javascript
微信小程序 网络API Websocket详解
2016/11/09 Javascript
AngularJS全局scope与Isolate scope通信用法示例
2016/11/22 Javascript
JavaScript中英文字符长度统计方法示例【按照中文占2个字符】
2017/01/17 Javascript
bootstrap 模态框(modal)实现水平垂直居中显示
2017/01/23 Javascript
JavaScript 数据类型详解
2017/03/13 Javascript
基于代数方程库Algebra.js解二元一次方程功能示例
2017/06/09 Javascript
微信小程序slider组件使用详解
2018/01/31 Javascript
如何在 JavaScript 中更好地利用数组
2018/09/27 Javascript
JS使用iView的Dropdown实现一个右键菜单
2019/05/06 Javascript
详解ES6 中的Object.assign()的用法实例代码
2021/01/11 Javascript
[01:09]DOTA2次级职业联赛 - ishow.HMM战队宣传片
2014/12/01 DOTA
python使用正则表达式替换匹配成功的组并输出替换的次数
2017/11/22 Python
Python+PyQt5实现美剧爬虫可视工具的方法
2019/04/25 Python
Python 读取xml数据,cv2裁剪图片实例
2020/03/10 Python
python+selenium+Chrome options参数的使用
2020/03/18 Python
opencv 形态学变换(开运算,闭运算,梯度运算)
2020/07/07 Python
Python unittest生成测试报告过程解析
2020/09/08 Python
蹦床仓库:Trampoline Warehouse
2018/12/06 全球购物
工商管理实习自我鉴定
2013/09/28 职场文书
区优秀教师事迹材料
2014/02/10 职场文书
三好学生个人先进事迹材料
2014/05/17 职场文书
宾馆前台接待岗位职责
2015/04/02 职场文书
新学期开学标语2015
2015/07/16 职场文书
动画《新网球王子 U-17 WORLD CUP》希腊队PV公开
2022/04/02 日漫
pandas时间序列之pd.to_datetime()的实现
2022/06/16 Python