基本类型的传递是复制一个新的值,会单独开发出一块新的内存
var a = 1function show() {var b = a + 100console.log(b) // 101}console.log(show(a)) // 1

引用类型的传递是栈地址发生改变, 多个引用类型的地址会指向同一个堆内存
var a = {name: 'qihuanran', age: 13}function show(a) {a.age = 100console.log(a.age) // 100}show(a)console.log(a) // 100

遍历对象
var a = {name: 'qihuanran', age: 123}for (let key in a) {console.log(a[key]) // 'qihuanran', '123'}
展开对象

查询对象中是否包含某个元素,不包含原形父级
Object.hasOwnProperty(‘name’)
查询对象中是否包含某个元素,包含原形父级
console.log('concat' in Object)// true
指定原形继承
let a = {name: 'qihuanran'}let b = {age: 12}Object.setPrototypeOf(a, b)console.log(a.age) // 12console.log('age' in a) // true
