JavaScript对象是一种复合值: 它是属性或已命名值得集合。通过"."符号引用属性值。当属性值是一个函数的时候,称其为方法。
比较:
字符串既然不是对象,为什么它会有属性?只要引用了字符串的属性,JavaScript就会将字符串通过调用new String()的方法转换对象,这个对象继承了字符串的方法,并被用来处理属性的应用。一旦属性引用结束,这个新创建的对象就会销毁。
原始值得比较是值得比较:只有在它们的值相等时它们才相等。
对象(引用)的比较并非值得比较: 即使两个对象包含相同的属性及相同的值,它们也是不相等的。
NaN : 它和任何值都不相等,包括自身。
构造函数(constructor):如果函数用来初始化(使用new运算符)一个新建的对象 。
显示类型转换
Boolean()
Number()
String()
object()
除了null或undefined之外的任何值都具有toString()方法
toFixed(x)保留有效位x,四舍五入
toExponential() 指数记数法
toPrecision(x) 保留有效位,包含整数
toString()
valueOf()
作用域:
函数作用域是指在“函数,声明的所有变量在函数体内始终可见的”。有意思的是,这就意味着变量在声明之前甚至已经可用。JavaScript的这个特性被正式地称为声明提前,即JavaScript函数里声明的所有变量都被“提前”至函数体的顶部。
数值直接量的元素结尾处可以留下逗号,这时并不会创建一个新的值为undefined的元素
hasOwnProperty()
isPrototypeOf()
getPrototypeOf()