浅谈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 相关文章推荐
javascript背投广告代码的完善
Apr 08 Javascript
javascript操作cookie的文章(设置,删除cookies)
Apr 01 Javascript
JQuery实现倒计时按钮的实现代码
Mar 23 Javascript
Jquery实现自定义tooltip示例代码
Feb 12 Javascript
javascript面向对象程序设计(一)
Jan 29 Javascript
JavaScript包装对象使用详解
Jul 09 Javascript
详解Angular路由 ng-route和ui-router的区别
May 22 Javascript
JS数组交集、并集、差集的示例代码
Aug 23 Javascript
js实现点击展开隐藏效果(实例代码)
Sep 28 Javascript
Vue 实时监听窗口变化 windowresize的两种方法
Nov 06 Javascript
JavaScript迭代器的含义及用法
Jun 21 Javascript
vue组件是如何解析及渲染的?
Jan 13 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
探讨如何在php168_cms中提取验证码
2013/06/08 PHP
浅谈PHP中foreach/in_array的使用
2015/11/02 PHP
PHP异常处理Exception类
2015/12/11 PHP
阿里云Win2016安装Apache和PHP环境图文教程
2018/03/11 PHP
PHP基于curl模拟post提交json数据示例
2018/06/22 PHP
安装docker和docker-compose实例详解
2019/07/30 PHP
jquery 表单取值常用代码
2009/12/22 Javascript
利用jquery.qrcode在页面上生成二维码且支持中文
2014/02/12 Javascript
浅析javascript操作 cookie对象
2014/12/26 Javascript
javascript文本框内输入文字倒计数的方法
2015/02/24 Javascript
全面解析Bootstrap排版使用方法(标题)
2015/11/30 Javascript
快速掌握WordPress中加载JavaScript脚本的方法
2015/12/17 Javascript
js简单倒计时实现代码
2016/04/30 Javascript
微信小程序 教程之wxapp 视图容器 view
2016/10/19 Javascript
写jQuery插件时的注意点
2017/02/20 Javascript
vue-hook-form使用详解
2017/04/07 Javascript
jquery实现图片轮播器
2017/05/23 jQuery
JS数组交集、并集、差集的示例代码
2017/08/23 Javascript
关于echarts在节点显示动态数据及添加提示文本所遇到的问题
2018/04/20 Javascript
vue如何通过id从列表页跳转到对应的详情页
2018/05/01 Javascript
如何阻止小程序遮罩层下方图层滚动
2019/09/05 Javascript
vue结合el-upload实现腾讯云视频上传功能
2020/07/01 Javascript
python解析模块(ConfigParser)使用方法
2013/12/10 Python
python使用wxpython开发简单记事本的方法
2015/05/20 Python
使用Python的Django框架结合jQuery实现AJAX购物车页面
2016/04/11 Python
python远程连接服务器MySQL数据库
2018/07/02 Python
关于pytorch处理类别不平衡的问题
2019/12/31 Python
Python进程的通信Queue、Pipe实例分析
2020/03/30 Python
python IDLE添加行号显示教程
2020/04/25 Python
体验完美剃须:The Art of Shaving
2018/08/06 全球购物
枚举与#define宏的区别
2014/04/30 面试题
数组越界问题
2015/10/21 面试题
给儿子的表扬信
2014/01/15 职场文书
会计岗位描述
2014/02/22 职场文书
党员作风建设自查报告
2014/10/23 职场文书
html5实现点击弹出图片功能
2021/07/16 HTML / CSS