您的位置:首页 > Web前端 > JavaScript

js高级

2012-11-13 21:19 120 查看
1,解释型   vs  编译型

解释型语言: php  javascript 解释型,就是先翻译成计算机能够认识的二进制语言,解释一行代码就执行;

编译型语言:先把代码翻译成计算机能够认识的语言之后,要生成一个二进制文件,exe,以后等再去执行代码的时候就。

基本数据类型:

基本数据类型是值传递

引用数据类型是引用传递

Undefined,首先他就是一个值,声明了一个变量,但是没有初始化

Var  告知解析器我们存在了一个变量,

初始化 第一次给他赋值

强制类型转化时,undefined被转化成 false

Null

没有定义的对象,null是一个对象

如果一个变量没有值就是undefined,如果一个对象没有定义 就是null

整形和浮点型都是数值类型

变量的作用域

    结合代码执行流程和变量的作用域,我们javascript解析引擎解析js代码的时候,因为我们可以在函数定义之前就调用这个函数,说明在解释的时候就已经将函数的定义告知解析器了,此时js解析器会将函数内部的所欲局部变量同时告知解析器,但是这个时候并不是使用真实的值,而是全部设置为undefined

var v1 = 100;

 f1();

 function f1(){

  var v1 = 200;

  alert(v1); 

 }

 alert(v1); 

javascript中,定义函数时和调用函数时的参数数量可以不一致,javascript 不是完全采用形参的形式,而是当我们调用这个函数的时候,专门形成了一个对象,arguments对象,专门来管理我们的实际参数

 var f1 = function(){

  alert(arguments.length);

  alert(arguments[0]);

 }

 f1(10,20,30);

获得对象

 var o1 = new Object();

 通过构造器获得对象,构造器其实就是一个普通函数,只是当我们通过new的方式来调用一个函数时,这个函数就是一个构造器

 var o2 = new Student();

 通过json语法,json javascript 对象表达法,javascript  object  notation

 var o3 = {'name':'zhangsan','age':'26'};

对象的原型,prototype

我们获得对象的方式,通过对象与对象之间的复制获得的,但是通过构造器获得的对象不是复制的函数,他是通过复制构造器的原型而来,原型也是一个对象,通过构造器的prototype获得

  function student(){

  }

  student.prototype.name = 'user';

  //student.name = 'admin';

  var o2 = new student();

  alert(o2.name);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: