js中任何事务都是对象。包括基本数据类型(undefined,boolean,number,string,null)。
对象只是拥有属性和方法的特殊数据类型。
基本数据类型也是对象
var a = "hello"; var b = "hello";
既然是对象,那么它默认拥有属性和方法
a.length 长度属性
a.toUpperCase() 把字符串a编程大写的方法
a==b,因为是按照 值进行比较 的
js中的内置对象
1、String
2、Array
3、Date
4、RegExp
5、Number
6、Math
var a = new String("123"); var b = new String("123"); alert(a==b); //结果返回false
那么问题来了,自定义对象不是 按值比较的?
总结:基本数据类型是值比较,非基本数据类型比对的内存地址。
var a = new Object(); a.price = 173; var b = a; b.price = 170; //b更改了属性值,a的属性值一起会被改变 alert(a.price); //输出170
感兴趣的朋友可以使用在线HTML/CSS/JavaScript代码运行工具:测试上述代码运行效果。
更多关于JavaScript相关内容感兴趣的读者可查看本站专题:《javascript面向对象入门教程》、《JavaScript错误与调试技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript遍历算法与技巧总结》及《JavaScript数学运算用法总结》