JavaScript 的三等号 "===" 以及 new String("")的实质
2012-09-01 14:26
330 查看
var str = "abc" 和 str = new String("abc"); 有区别吗? 事实上, 是有区别的, new String("abc")创建了一个对象, 这个对象的值是"abc", 至于对象的值是"abc"是什么意思? 是JavaScript内部的事情, 总之: str = "abc"这一句, str变量指向一个常数字串对象, 而 str = new String("abc")这一句,
str指向一个对象类型的变量, 这两种对象是不同的.
三等号 "===" 的规则如下, 如果变量一个指向常数类型, 一个指向对象类型, 肯定不等, 比如上述两种"abc"的赋值方式是不想等的. 如果同是对象变量, 就要看是否指向同一个对象, 如果同时常数型变量, 就看是否值相同. 当然, 不同类型的常数对象的值肯定不同.
str指向一个对象类型的变量, 这两种对象是不同的.
三等号 "===" 的规则如下, 如果变量一个指向常数类型, 一个指向对象类型, 肯定不等, 比如上述两种"abc"的赋值方式是不想等的. 如果同是对象变量, 就要看是否指向同一个对象, 如果同时常数型变量, 就看是否值相同. 当然, 不同类型的常数对象的值肯定不同.
相关文章推荐
- a href="" 和 href="#" 以及 href="javascript:void(0)"时 以及其中的 onclick 的区别
- Javascript 如何得到input type="radio" 的值?
- "CREATE TABLE AS SELECT"以及"INSERT INTO AS SELECT"语句的优化
- <a href="#" 与<a href="javascript:void(0)"的区别
- extern "C"和__declspec(dllexport)以及__declspec(dllimport) 和def的简单解析
- 不同浏览器下<a href="#">与<a href="javascript:void(0);">的区别
- 使用CString的方法(以及用VC写DLL中"error LNK2005: _DllMain@12 already defined"的解决办法)
- eclipse弹出:An internal error occurred during: "JavaScript translation for 这个错误
- 对 "多部件控件以及依赖组件" 的补充
- 项目____JavaScript做null、""、undefined判断及==、===的区别
- href="#"与href="javascript:void(0)"的区别
- . 【JAVA】给定任意 字符串"yekmaakkccekymbvb",求出字符串中有多少种字符,以及每个字符的个数?
- db.update("Book",values,"name = ?",new String[]{"book2"})错误用法记录
- JavaScript 中的"类"与"实例"
- inner join,left join,right join,full join以及外连接"(+)"的用法
- android EditText软键盘显示隐藏以及"监听"
- Javascript 正则表达式验证日期,格式如同"2010-10-08"
- 在Android Studio 和 Eclipse 的 git 插件操作 "代码提交"以及"代码冲突"
- JavaScript获取url中"?"符后的字串
- 关于js中单引号(')和双引号(")的使用以及转义的理解