JavaScript知识点整理

时间: 作者:快中

  

[javascript知识点,javascript知识点总结,javascript整理]JavaScript知识点整理

  

JavaScript一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML(标准通用标记语言下的一个应用)网页上使用,用来给HTML网页增加动态功能。

  

  

首先,还是用比较官方的文字描述来解释下JavaScript:  
  

  

JavaScript一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。

  
  它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是  
  在HTML(标准通用标记语言下的一个应用)网页上使用,用来给HTML网页增加动态功能。

  

  

JavaScript拥有以下几个特点:  

  

· 脚本语言。JavaScript是一种解释型的脚本语言,C、C++等语言先编译后执行,而JavaScript是在程序的运行过程中逐行进行解释。

  
  · 基于对象。JavaScript是一种基于对象的脚本语言,它不仅可以创建对象,也能使用现有的对象。

  
  · 简单。JavaScript语言中采用的是弱类型的变量类型,对使用的数据类型未做出严格的要求,是基于Java基本语句和控制的脚本语言,其设计简单紧凑。

  
  · 动态性。JavaScript是一种采用事件驱动的脚本语言,它不需要经过Web服务器就可以对用户的输入做出响应。在访问一个网页时,鼠标在网页中进行鼠标点击或上下移、窗口移动等操作JavaScript都可直接对这些事件给出相应的响应。

  
  · 跨平台性。JavaScript脚本语言不依赖于操作系统,仅需要浏览器的支持。因此一个JavaScript脚本在编写后可以带到任意机器上使用,前提上机器上的浏览器支 持JavaScript脚本语言,目前JavaScript已被大多数的浏览器所支持。

  

  

JavaScript由以下部分组成:  

  

· ECMAScript,描述了该语言的语法和基本对象。

  
  · 文档对象模型(DOM),描述处理网页内容的方法和接口。

  
  · 浏览器对象模型(BOM),描述与浏览器进行交互的方法和接口。

  
  

  

JavaScript都有哪些数据类型?  

  

· object object中又有 Function、String、Array、Object、Date等等  
  · string  
  · number  
  · boolean  
  · null  
  · undefined  

  

下面部分代码来证明下以上所说:  

  

String、Number是对象,string、number是不同的数据格式...

  
  

  

var str = "abc";  
  var Str = new String("abc");  
  var num = 100;  
  var Num = new Number(100);  
  console.log(typeof str, typeof Str, typeof num, typeof Num); // string object number object  

  

对象原型链是个啥?  

  

当我们用new一个对象 (使用构造函数创建) 或者用Object.create创建对象时,那么这个对象将会有原型和原型链。

  
  比如:我们创建个构造函数_obj,然后通过_obj来new一个obj,那么这时的原型链就是:obj → _obj → Object.prototype → null。

  
  

  

让我们通过代码来说明吧:  

  
  
  function _obj(){};  _obj.prototype.name = "野兽"; //每个函数都包含一个prototype属性,这个属性指向一个对象的引用,这个对象就是“原型对象”。

  _obj.prototype.age = 21;  _obj.prototype.sayHello = function(){  console.log("Hello "+this.name);  };  var obj = new _obj();  console.log(obj); //_obj{} 而其的__proto__里包含了_obj里的各个属性,包括name,age,sayHello  console.log(obj.__proto__ == _obj.prototype); //true  obj.sayHello(); // Hello 野兽  console.log(Object.prototype.__proto__); // null 当我们追究到Object(也就是object的源头时)其指向的是null

  
  

值的注意的是:Object.create(null)的原型链直接为null,也就是说人家的原型链短的很呢...

  
  

  

JavaScript中作用域怎么玩?  

  

当我们在JavaScript中使用var声明一个变量,其实就是在该作用域所指向的对象添加一个属性及属性值。

  
  在JavaScript中不存在块级作用域,在当前作用域内声明汇盛国际注册的变量也只有在当前作用域及当前作用域内的函数内可用,而在函数内声明的变量只适用于该函数内(如果不做操作),在函数外部调用该变量将会报错not defined。 (责任编辑:admin)

推荐图片Related

相关文章Related

查看更多热门新闻


首页 | 特效插件 | 常用代码 | 样式素材 | 脚本代码 | css特效

Copyright © 2017-2018 汇盛国际 版权所有

系统要求:本站自适应各终端浏览器分辨率

请使用Google、Firefox、IE9、百度浏览器登录网站

网站地图 | RSS订阅 | 汇盛国际