es5与es6常用语法教程(5)

js常用语法系列教程如下

本节教程主要讲解以下几个常用语法

  • 获取函数的名字
  • 对象表达式
  • 对象的拷贝
  • __proto__

获取函数的名字

  • 有时候我们有获取函数名字的需求,这时我们可以使用下面的方式
function breakfast() {}
console.log(
  breakfast.name // breakfast
)
  • 匿名函数
let breakfast = function () {}
console.log(
  breakfast .name  // breakfast 
)

对于匿名函数,变量breakfast就成了函数名

  • 非匿名函数
let breakfast = function supreBreakfast() {}
console.log(
  breakfast .name  // supreBreakfast,匿名函数的优先级低 
)

对象表达式

let dessert = '🍰', drink = '🍺'

let food = {
  dessert: dessert,
  drink: drink ,
}

console.log(food) // {dessert: "🍰", drink: "🍺"}
  • 如果想在对象中添加和变量名一样的属性名,并且这个属性的值就是这个变量表示的这个值,我们可以直接在这个对象中加上这个属性,而不需要再去指定属性的值了,这时我们可以去掉冒号右边变量的名字。
let dessert = '🍰', drink = '🍺'
let food = {
  dessert,
  drink,
}
console.log(food) //{dessert: "🍰", drink: "🍺"}
  • 也可以在对象中直接添加一个方法
let dessert = '🍰', drink = '🍺'
let food = {
  dessert,
  drink,
  breakfast() {}
}

console.log(food) // {dessert: "🍰", drink: "🍺", breakfast: ƒ}

对象的拷贝(Object.assign)

let breakfast = {}

// 将{drink: '啤酒'} 对象拷贝到breakfast对象中
Object.assign(breakfast, {drink: '啤酒'})

console.log(breakfast) // {drink: "啤酒"}
  • Object.assign()函数的第一个参数是拷贝到的目标对象
  • 第二个参数是需要拷贝的对象

proto

let breakfast = {
  getDrink() {
    return '混泥土王'
  }
}

let dinner = {
  getDrink(){
    return '混泥土张'
  }
}

let sunday = {
  __proto__: breakfast
}

console.log(sunday.getDrink()) // 混泥土王
console.log(Object.getPrototypeOf(sunday) === breakfast) // true

// 设置对象的prototype
sunday.__proto__ = dinner
console.log(sunday.getDrink()) // 混泥土张
console.log(Object.getPrototypeOf(sunday) === dinner) // true

福利时间

  • 作者React Native开源项目OneM地址(按照企业开发标准搭建框架设计开发):https://github.com/guangqiang-liu/OneM (欢迎小伙伴们 star)
  • 作者简书主页:包含50多篇RN开发相关的技术文章http://www.jianshu.com/u/023338566ca5 (欢迎小伙伴们:多多关注,多多点赞)
  • 作者React Native QQ技术交流群:620792950 欢迎小伙伴进群交流学习
  • 友情提示:在开发中有遇到RN相关的技术问题,欢迎小伙伴加入交流群(620792950),在群里提问、互相交流学习。交流群也定期更新最新的RN学习资料给大家,谢谢支持!
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容