浅谈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 相关文章推荐
JavaScipt基本教程之JavaScript语言的基础
Jan 16 Javascript
Jquery Autocomplete 结合asp.net使用要点
Oct 29 Javascript
iframe 上下滚动条如何默认在下方实现原理
Dec 10 Javascript
node.js中的console用法总结
Dec 15 Javascript
javascript实现简单的页面右下角提示信息框
Jul 31 Javascript
Bootstrap实现input控件失去焦点时验证
Aug 04 Javascript
BootStrap使用file-input插件上传图片的方法
Sep 05 Javascript
微信公众号-获取用户信息(网页授权获取)实现步骤
Oct 21 Javascript
微信小程序-详解数据缓存
Nov 24 Javascript
addEventListener()与removeEventListener()解析
Apr 20 Javascript
layui实现下拉框三级联动
Jul 26 Javascript
通过滑动翻页效果实现和移动端click事件问题
Jan 26 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模拟登陆163邮箱发邮件及获取通讯录列表的方法
2015/03/07 PHP
ThinkPHP框架安全实现分析
2016/03/14 PHP
php时间函数用法分析
2016/05/28 PHP
Laravel中为什么不使用blpop取队列详析
2018/08/01 PHP
跟我学Node.js(四)---Node.js的模块载入方式与机制
2014/06/04 Javascript
前端必备神器 Snap.svg 弹动效果
2014/11/10 Javascript
jQuery操作DOM之获取表单控件的值
2015/01/23 Javascript
js随机生成网页背景颜色的方法
2015/02/26 Javascript
深入理解JavaScript系列(39):设计模式之适配器模式详解
2015/03/04 Javascript
javascript实现检验的各种规则
2015/07/31 Javascript
jQuery旋转木马式幻灯片轮播特效
2015/12/04 Javascript
JavaScript知识点总结(十一)之js中的Object类详解
2016/05/31 Javascript
Jquery组件easyUi实现表单验证示例
2016/08/23 Javascript
基于SpringMVC+Bootstrap+DataTables实现表格服务端分页、模糊查询
2016/10/30 Javascript
详解Nodejs的timers模块
2016/12/22 NodeJs
vue-router 导航钩子的具体使用方法
2017/08/31 Javascript
浅谈AngularJS中$http服务的简单用法
2018/05/15 Javascript
angular的输入和输出的使用方法
2018/09/22 Javascript
vue多层嵌套路由实例分析
2019/03/19 Javascript
解决vuex数据异步造成初始化的时候没值报错问题
2019/11/13 Javascript
JavaScript实现点击自制菜单效果
2021/02/02 Javascript
python使用正则表达式的search()函数实现指定位置搜索功能
2017/11/10 Python
From CSV to SQLite3 by python 导入csv到sqlite实例
2020/02/14 Python
python爬虫判断招聘信息是否存在的实例代码
2020/11/20 Python
Python logging自定义字段输出及打印颜色
2020/11/30 Python
HTML5 source标签:媒介元素定义媒介资源
2018/01/29 HTML / CSS
新加坡网上美容店:Hermo新加坡
2019/06/19 全球购物
什么是URL
2015/12/13 面试题
寻找最美家庭活动方案
2014/08/20 职场文书
乡镇党的群众路线教育实践活动制度建设计划
2014/11/03 职场文书
贷款担保书
2015/01/20 职场文书
鲁迅故居导游词
2015/02/05 职场文书
刑事上诉状范文
2015/05/22 职场文书
《我的长生果》教学反思
2016/02/20 职场文书
简单了解 MySQL 中相关的锁
2021/05/25 MySQL
使用ORM新增数据在Mysql中的操作步骤
2021/07/26 MySQL