2019独角兽企业重金招聘Python工程师标准>>>

java或者C#中的对象都是new一个class出来的,而且里面有字段、属性、方法,规定的非常严格。但是javascript就比较随意了——数组是对象,函数是对象,对象还是对象。对象里面的一切都是属性,只有属性,没有方法。那么这样方法如何表示呢?——方法也是一种属性。因为它的属性表示为键值对的形式。

而且,更加好玩的事,javascript中的对象可以任意的扩展属性,没有class的约束。这个大家应该都知道,就不再强调了。

先说个最常见的例子: var fn = function () { alert(100); }; fn.a = 10; fn.b = function () { alert(123); }; fn.c = { name: "王福朋", year: 1988 };

以上代码中,obj是一个自定义的对象,其中a、b、c就是它的属性,而且在c的属性值还是一个对象,它又有name、year两个属性。

这个可能比较好理解,那么函数和数组也可以这样定义属性吗?——当然不行,但是它可以用另一种形式,总之函数/数组之流,只要是对象,它就是属性的集合。

以函数为例子:

转载于:https://my.oschina.net/xueptao/blog/886507

js的闭包与原型记录相关推荐

  1. web前端面试高频考点——JavaScript 篇(一)【JS的三座大山 】 原型和原型链、作用域和闭包、异步

    系列文章目录 JavaScript 知识梳理,收录了web前端面试 95%以上 的高频考点,满满的干货.给你做一个高效的知识梳理,为你的面试保驾护航! 内容 参考链接 HTML & CSS 篇 ...

  2. js return 闭包为null_js 基础知识总结

    其实我们做的大多数都是上层开发,表面上看了解底层原理在开发的过程中好像没有太大的作用,比如说TCP协议.闭包.原型链等,在开发中懂不懂他的原理好像并不影响开发的效率和功能,但是如果懂他们的话可能会跳过 ...

  3. Jquery真的不难~第八回 JS的闭包问题

    百度百科中对闭包的定义: 闭包是可以包含自由(未绑定到特定对象)变量的代码块:这些变量不是在这个代码块内或者任何全局上下文中定义的,而是在定义代码块的环境中定义."闭包" 一词来源 ...

  4. 利用js的闭包原理做对象封装及调用方法

    创建一个js文件,名为testClosure.js: ? 1 2 3 4 5 6 7 8 9 (function () {   function a()   {     alert('i am a') ...

  5. vue js 对象下的原型_如何使用Vue.js和Pusher创建实时原型反馈应用程序

    vue js 对象下的原型 by Neo Ighodaro 由新Ighodaro 如何使用Vue.js和Pusher创建实时原型反馈应用程序 (How to create a realtime pro ...

  6. JS 面向对象编程、原型链、原型继承(个人学习总结)

    一.面向对象 1. 面向对象 是所有语言 都有的一种编程思想,组织代码的一种形式 基于对象的语言:JS语言 面向对象的语言:c++ java c# 2. 面向对象 3大特征 封装:将重用代码封装到函数 ...

  7. js的作用域链,原型链,以及闭包函数理解

    代码一: this.number = 10 function a() {this.number = 20 } a.prototype.init = () => console.log(this. ...

  8. JavaScript —— this、闭包、原型、异步

    转载自水歌博客,方便学习,顺便前排观望大佬! JavaScript 是一门原生支持函数式编程范式的.基于原型的面向对象语言,也是一门弱类型动态脚本语言 What's this ? JavaScript ...

  9. js return 闭包为null_那么如何让你的 JS 写得更漂亮?

    网上有不少关于JS编写优化建议,这里我根据自己的经验提出一些比较有用的意见. 1. 按强类型风格写代码 JS是弱类型的,但是写代码的时候不能太随意,写得太随意也体现了编码风格不好.下面分点说明: (1 ...

最新文章

  1. 解决putty中文乱码并远程访问linux界面功能
  2. CAS是什么?ABA问题的产生和解决方法
  3. 实变函数与泛函分析导论
  4. Lesson 15.1 学习率调度基本概念与手动实现方法
  5. mysql5.7.20linux安装,linux下 mysql5.7.20安装(精华)
  6. 计算机硬盘read,为你解答电脑开机提示a disk read error occurred怎么办
  7. 中年女子颈肩手肿痛案
  8. Ajax获取XML格式的数据
  9. IOS选中按钮状态的记录
  10. 快递查询小程序源码可运营+微信物流快递查询小程序
  11. windows中配置ant环境变量
  12. vmware安装linux.iso
  13. ftok函数(file to key)
  14. IE下判断IE版本的语句...[if lte IE 8]……[endif]
  15. Windows设置exe或者bat文件开机启动的几种方法汇总
  16. logback springBoot 配置日志
  17. html爱心特效代码教程
  18. 用python 画美国地图
  19. 计算机禁用网络后怎么打开,无线网关,教您笔记本无线网络禁用后怎么开启
  20. coap 返回版本信息_CoAP协议详解

热门文章

  1. windows环境下跑hadoop自带的wordcount遇到的问题
  2. Silverlight实用窍门系列:40.Silverlight中捕捉视频,截图保存到本地
  3. 【JSConf EU 2018】Ryan Dahl: Node.js 的设计错误
  4. 27. FormPanel类的defaults属性
  5. spring MVC 返回json
  6. No Database Selected
  7. 一键安装lamp之php插件
  8. WCF中常见的几种Host,承载WCF服务的方法详解
  9. 使用JNDI操作LDAP(5)(转载)
  10. 关于routerOS设置PPPOE与HOTSPOT并存的说明