浅谈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 相关文章推荐
33种Javascript 表格排序控件收集
Dec 03 Javascript
JSON.stringify 语法实例讲解
Mar 14 Javascript
jQuery 下拉列表 二级联动插件分享
Mar 29 Javascript
js使用递归解析xml
Dec 12 Javascript
jQuery实现切换页面过渡动画效果
Oct 29 Javascript
Angularjs分页查询的实现
Feb 24 Javascript
vue使用drag与drop实现拖拽的示例代码
Sep 07 Javascript
基于Vue2.0+ElementUI实现表格翻页功能
Oct 23 Javascript
详解使用jest对vue项目进行单元测试
Sep 07 Javascript
解决vue动态为数据添加新属性遇到的问题
Sep 18 Javascript
Vue触发式全局组件构建的方法
Nov 28 Javascript
Vue.Draggable拖拽功能的配置使用方法
Jul 29 Javascript
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/10/09 PHP
PHP使用Memcache时模拟命名空间及缓存失效问题的解决
2016/02/27 PHP
js no-repeat写法 背景不重复
2009/03/18 Javascript
菜鸟javascript基础资料整理3 正则
2010/12/06 Javascript
jquery高级编程的最佳实践详解
2014/03/23 Javascript
jQuery中wrapInner()方法用法实例
2015/01/16 Javascript
探讨JavaScript中的Rest参数和参数默认值
2015/07/29 Javascript
Javascript仿新浪游戏频道鼠标悬停显示子菜单效果
2015/08/21 Javascript
怎么引入(调用)一个JS文件
2016/05/26 Javascript
简单学习vue指令directive
2016/11/03 Javascript
在JS中如何把毫秒转换成规定的日期时间格式实例
2017/05/11 Javascript
node跨域请求方法小结
2017/08/25 Javascript
vue引入新版 vue-awesome-swiper插件填坑问题
2018/01/25 Javascript
浅谈React中的元素、组件、实例和节点
2018/02/27 Javascript
Vue下路由History模式打包后页面空白的解决方法
2018/06/29 Javascript
JS中实现浅拷贝和深拷贝的代码详解
2019/06/05 Javascript
JavaScript 函数用法详解【函数定义、参数、绑定、作用域、闭包等】
2020/05/12 Javascript
python动态网页批量爬取
2016/02/14 Python
python下setuptools的安装详解及No module named setuptools的解决方法
2017/07/06 Python
火车票抢票python代码公开揭秘!
2018/03/08 Python
对TensorFlow的assign赋值用法详解
2018/07/30 Python
Python实现提取XML内容并保存到Excel中的方法
2018/09/01 Python
Python玩转Excel的读写改实例
2019/02/22 Python
Python tkinter实现图片标注功能(完整代码)
2019/12/08 Python
python paramiko远程服务器终端操作过程解析
2019/12/14 Python
Python实现微信好友的数据分析
2019/12/16 Python
如何解决pycharm调试报错的问题
2020/08/06 Python
XMLHttpRequest对象在IE和Firefox中创建方式有没有不同
2016/03/23 面试题
技术经理的自我评价范文
2013/12/03 职场文书
优秀的自荐信要注意哪些
2014/01/03 职场文书
金融学专科生自我鉴定
2014/02/21 职场文书
公安学专业求职信
2014/07/27 职场文书
2014年小学校长工作总结
2014/12/08 职场文书
辞职信怎么写?你都知道吗?
2019/06/24 职场文书
发工资啦!教你用Python实现邮箱自动群发工资条
2021/05/10 Python
vue实现书本翻页动画效果实例详解
2022/04/08 Vue.js