3.数组.标准库
1. number, string, boolean(声明方式加不加new的区别)
var a = number( 1 ) ------------返回数字 1
var b = string( false )---------------返回字符串 'false'
var c = boolean( 1)-----------返回布尔值 true (5个false值: 0 , NaN , ' ' , undefined , null)
以上三种声明方式都是返回基本类型
var a = new number( 1 )
var b = new string( false )
var c = new boolean( 1)
以上三种返回的是对象(hash)
2. Object (Array 和function)(加不加new都一样是返回对象)
注意:Arry的不一致性
var a = Array(3)-------生成一个长度为3的数组,里面有3个undefined即 { , , } ---------------------------只有一个值的时候体现不一致性,两个或以上正常生成数组
var a = Array(3,3)------生成长度为2的数组即 {3,3}
var a Array(3,3,3)-----生成长度为3的数组即 {3,3,3}
----------------------------------------------------------------------------------------------------------
a.__proto__ === Array.prototype
Array.prototype为Array的公有属性
function ( 加不加new都一样 )
var f = function(a,b){
return a + b
}
var f = new Function('a', 'b' , 'return a + b')