0. JavaScript语言中,整个核心的体系结构都围绕着两个构造函数Object和Function来构建的。
1. 一个对象的原型就是它的构造函数的prototype的值。
2.所有的函数都有一个prototype属性,当一个函数被定义的时候,prototype自动创建和初始化;而对象没有prototype属性。
prototype属性初始化值是一个对象,这个对象只有一个属性--constructor,它指回到和原型相关联的构造函数,Person.prototype.constructor === Person === true。
3. 添加给原型的任何属性,都会成为被构造函数初始化的对象的属性。
4. 函数原型中的属性,函数本身访问不到,undefined,只有该函数实例化后的对象可以访问。
5. js中没有类。
6. 直接定义的变量或者函数都是window的属性。
7. this的具体含义要看使用this的上下文, this一般在函数中使用,所以this的含义得看调用函数的是谁。
8. constructor始终指向创建当前对象的构造函数,每一个对象都包含这个属性,在自己实现继承关系时,要注意constructor的指向问题。
9. 对象中的constructor属性是来自->实例化该对象的函数的prototype属性指向的对象的constructor属性(参照第一条);有点绕,其实就是对象继承了对象原型中的属性。
10. 创建类的阶段不会初始化父类的数据,因为Person是一个空的构造函数。
11. 每一个函数和new操作符生成的对象都具有一个属性__proto__, 这个属性保存了创建它的构造函数的prototype属性的引用。IE不支持__proto__属性。
12. 直接用function关键字定义的函数要和用new定义的对象区分开,因为函数也可以说是对象,也可以用new Function()来定义 。
13. alert一个函数的结果是整个函数;alert一个对象的结果是[object Object]。
14. alert调用了toString函数
15. 'isstring'.constructor;//String()
true.constructor;//Boolean()
9.0.constructor;//Number();这下对了吧csf178
(9).constructor;//Number();匿名对象
9.constructor;//SyntaxError;经csf178指正,这是浮点数转换造成的语法冲突
[].constructor;//Array()
{}.constructor;//fireFox :SyntaxError;IE : Object();注意javascript定义中{}是代码块和对象定义,不是Operator
({}).constructor;//Object();匿名对象
16. Function.constructor === Object.constructor // true, function Function(){ [native code] }
Function和Object都是有同一个构造函数初始化的, Object 是可以delete的,Function不行,
17. Function instanceof Object //true
Function.prototype是一个对象,所以他的构造函数是Object. 从原型链机制的的角度来说,那就是说所有的函数都能通过原型链找到创建他们的Object构造函数的构造原型Object.prototype对
象
Object instanceof Function //true
Object, Function, Array等等这些都被称作是构造“函数”,他们都是函数。而所有的函数都是构造函数Function的实例。从原型链机制的的角度来说,那就是说所有的函数都能通过原型链找到
创建他们的Function构造函数的构造原型Function.protorype对象
18. instanceof是一个二元运算符,如:A instanceof B. 其中,A必须是一个合法的JavaScript对象,B必须是一个合法的JavaScript函数 (function).
如果函数B在对象A的原型链 (prototype chain) 中被发现,那么instanceof操作符将返回true,否则返回false.
19. 原型链 p->Person.prototype->Object.prototype->null;Person->Function.prototype->Object.prototype->null;Object.prototype.__proto__ === null;Object.prototype为空
20. A prototype property is automatically created for every function, to provide for the possibility that the function will be used as a constructor.
prototype是每个函数都会有的一个成员,并且会在此函数被当做构造器调用时发挥作用。所以普通的对象没有prototype属性。
21. 普通对象 new Person();函数对象,用function关键字定义的或者new Fcuntion().区分开这两种对象。
分享到:
相关推荐
JavaScript 课程内容总结 JavaScript 是一种广泛应用于网页开发的编程语言,以下是 JavaScript 的基础知识点总结。 数据类型 在 JavaScript 中,数据类型包括字符串(string)、数值型(number)、布尔型...
这篇经典JavaScript知识总结涵盖了从基础语法到高级特性的多个方面,旨在帮助有一定基础的开发者巩固和扩展他们的JavaScript知识。 1. **创建脚本块**:在HTML文件中,使用`<script>`标签来插入JavaScript代码。...
这篇文档适合刚接触JS和对JS知识点不熟悉的同志。新手的话可以边学边参考文档;有一定基础的可以查漏补缺,便于复习和查阅。
js学习中的重要笔记,非常适合菜鸟快速入门,看完即会使用js!
在“21天学js”教程中,JavaScript作为一种强大的客户端脚本语言,广泛应用于网页交互和动态效果的实现。这个21天的学习旅程涵盖了JavaScript的基础到进阶内容,旨在帮助初学者快速掌握这一核心技术。 首先,我们从...
本文将围绕“JavaScript学习总结”这一主题,深入探讨其基本概念、语法特性、DOM操作以及与CSS的协同使用。 一、JavaScript基础 JavaScript由Brendan Eich在1995年发明,最初是为了网页交互而设计,现在已经成为...
JavaScript总结,很适合学习基础的东西。上传的是图片格式是,方便大家打开。仅仅一张图,让你了解javascript。
在学习完js课程之后,自己手动编写的总结文档,以及平常遇到的小问题的解决办法,通俗易懂,适合正在学习js的同学
通过思维导图的方式,快速了解掌握JavaScript的基本内容
【标题】"jslinux总结帖"所涉及的知识点主要集中在JavaScript和Linux操作系统上,通过将JavaScript与Linux结合,实现了一种独特的技术体验。JavaScript是一种广泛应用于网页和网络应用的编程语言,而Linux则是开源的...
JS总结第二章自己写的总结 请大家下载看看 谢谢
在"JS总结"这个主题中,我们可以探讨以下几个关键知识点: 1. **基础语法**:JavaScript的基础包括变量声明(var、let、const)、数据类型(如字符串、数字、布尔、null、undefined、对象、数组等)、运算符(算术...
这份“js的全套学习总结,xmind版本”提供了一个全面的学习路线图,旨在帮助开发者系统地理解和掌握JavaScript的核心概念及高级特性。 首先,JavaScript的基础知识包括变量、数据类型(如字符串、数字、布尔值、...
总结来说,JS学习涉及基础语法、数据类型、进制转换、错误处理等多个方面,理解这些基础知识对于深入学习和应用JavaScript至关重要。同时,了解和掌握像jQuery这样的库可以帮助开发者更高效地处理DOM操作,提高开发...
廖雪峰js教程总结,个人通过阅读廖大大的官网JavaScript教程总结的难点,欢迎指正
14. **Node.js基础**:了解JavaScript在服务器端的应用,Node.js的事件驱动模型,以及文件系统、网络请求等模块。 15. **框架与库**:如React、Vue、Angular等,它们如何简化前端开发,以及如何结合JavaScript进行...
JS函数总结,里面包含了函数分类,用于下载积分积攒使用
JavaScript中的循环总结(教辅)JavaScript中的循环总结(教辅)JavaScript中的循环总结(教辅)JavaScript中的循环总结(教辅)JavaScript中的循环总结(教辅)JavaScript中的循环总结(教辅)JavaScript中的循环...
javascript对象创建方法总结,通过这些方法的总结,可以对对象有了更深一步的了解,也加深了对对象的巩固认识。
Javascript学习思维导图xmind格式,查看更方便!