浅谈js中变量初始化
2015-02-03 00:00
387 查看
我在js里面写了一个去除首尾空格及特定字符的函数。代码如下:
代码看上去没有什么问题,运行起来也没有错误。
直到今天,我在搜索栏里搜索“note3”的时候,才发现,地址栏里搜索的内容变成了“ote3”,而其他字母或者是数字开头则是正常的,搜索什么,地址栏里的内容就是什么。
调试过代码之后,将代码改为:
在函数中增加了对charlist的初始化。在次搜索“note3”,结果正确。
虽然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是弱类型语言,使用变量并不要求一定要初始化,运行的时候,代码会自动转换并赋值。但是这样做会引起一些意想不到的问题,因此,对所有使用到的变量进行初始化,是非常有必要的。
今天就先到这里了,希望小伙伴们能够喜欢。
相关文章推荐
- 浅谈js中变量初始化
- 浅谈Java变量的初始化顺序详解
- -----------js判断变量初始化的三种形式
- 浅谈js中子页面父页面方法 变量相互调用
- 浅谈js中的变量名和函数名重名
- js在safari浏览器下声明变量时会根据变量名和页面Dom元素id自动初始化为Dom类型
- 浅谈Java变量的初始化顺序详解
- js判断变量初始化的三种形式及推荐用的形式
- js class模型 关于 初始化key值为非基本类型是 实例之间是引用该变量
- [转] 浅谈JS中的变量及作用域
- js变量浅谈
- 浅谈js中子页面父页面方法 变量相互调用
- 翻译:js中函数和变量的初始化
- 关于C#中的变量的初始化问题浅谈
- 浅谈C++变量初始化顺序
- 浅谈js中子页面父页面方法 变量相互调用
- web 开发之js---JS变量也要注意初始化
- 浅谈C++变量(对象)初始化问题
- JS变量也要注意初始化
- js判断变量初始化的三种形式及推荐用的形式