1.什么是对象?
对象就是一个事物拥有自己的属性和功能比如说车是一个对象他有自己的颜色,名字,大小,价格这些属性,他还有自己的功能:能跑,能载人(个人理解的,可能不到位)
2.对象创建的方式
var obj = {} //plainObject 对象字面量/对象直接量
var obj = new Object() //1.系统自带的构造函数2.自定义
function Person(){} //构造函数大头峰命名规则
var person = new Person()
3.构造函数的内部原理
- 在函数体最前面隐式的加上 this = {}
- 执行this.xxx = xxx
- 隐式的返回this
function Student(name, age, sex){
var this = {}
this.name = name;
this.age = age;
this.sex = sex;
return this
}
4.包装类
var num = new Number(123)
var str = new String('abcd')
var bol = new Boolean('true')
var num = 4
num.len = 3 //new Number(4).len = 3 delete
console.log(num.len) // console.log(new Number(4).len) undefiend
var arr = [1, 3, 4, 5]
arr.length = 2
console.log(arr) // [1. 3]
var str = 'abcd'
str.length = 2 //new String('abcd').length = 2 delete
console.log(str) //console.log(new String('abcd').length) 4
5.包装类常见面试题
var str = 'abc'
str += 1 //abc1
var test = typeof(str) //string
if(test.length ==6){ //true
test.sign = "typeof的返回结果可能为String"
}
console.log(test.sign) //undefined