zoukankan      html  css  js  c++  java
  • 二、JavaScript基础 学好jQuery要了解的

    JavaScript与ECMAScript

    ECMAScript 通过ECMA-262标准的脚本程序设计语言

    ECMAScript标准下有 javascript jscript actionscript

    JavaScript分为值类型和引用类型两大类,有时也称为原始值和引用值。值类型:存储在栈(stack)中,一个值类型的变量其实是一个内存地址,地址中存储的就是值本身。引用类型:存储在堆(heap)中,一个引用类型的变量的值是一个指针,指向存储对象的内存处。

     还可以将javascript对象分为 本地对象、内置对象、宿主对象。

    实际使用中为了使javascript真正单纯,可以将javascript中的类型分为:undefined、null、number、string、boolean、function、Object引用类型。

    function就是一种引用类型。另外javascript的值类型背后其实也是一个“引用类型”,就是所有的类型都是从Object中派生而来。比如Number是一个“值类型”,但是其实存在一个引用类型“Number”,可以使用如下方式声明:var oNumberObject = new Number(55);  我们一般都是这样声明 var iNumberObject = 55;

    undefined:表示一个对象没i有被定义或者没有被初始化。

    null:表示一个尚未存在的对象的占位符。

    有意思的是undefined类型是从null派生来的。所以他们是相等的:alert(null == undefined);输出true。

    var oTemp = null;

    if(oTemp){};//false

    if(undefined)();//false

    上面的语句if的条件都是false。但如果注释掉var oTemp = null;就会error。

    但是无论是否声明过oTemp对象,使用typeof运算符获取到的都是undefined并且不会报错。

    alert(typeof oTemp1);//输出"undefined"

    所以在程序中使用一个可能没有定义过的变量,并且没有使用typeof做判断,那么就会出现脚本错误。此变量是null或者没有初始化的undefined对象,可以通过if或者==来判断。

    未声明的对象只能使用typeof运算符来判断。

    typeof运算符返回的都是一个字符串。而程序员经常当作类型来使用。

    下面是typeof运算符对各类型的返回结果。

    undefined:undefined

    null:object

    string:string

    number:number

    boolean:Boolean

    function:function

    object:object

    提醒,一个没有返回值的function实际上返回的是undefined.

    显示声明变量var iNum,sName;

    即使变量的类型在初始化时已经被确定,但仍然可以在之后把他设置为其他类型。

    var sName = "ajax"; sName = 55;

    隐式声明不使用var关键词,而直接为变量赋值。隐式声明的变量总是被创建为全局变量。

    javascript命名方法:变量用匈牙利命名法,var sName; var iNum;函数用Camel命名法,testMethod();

    全局变量是window对象的属性。作用域是当前window窗体。window.sName.

    闭包:是一个拥有许多变量和绑定了这些变量的环境的表达式(通常是一个函数),因而这些变量也是该表达式的一部分。

    简单表述闭包:闭包就是function实例以及执行function实例时来自环境的变量。

    闭包在javascript中是隐式创建的。

  • 相关阅读:
    HDU 3401 Trade 【DP+单调队列优化】
    POJ 3017 Cut the Sequence 【DP+单调队列优化+平衡树】
    CodeForces 342D Xenia and Dominoes 【DP+容斥】
    HDU 4348 To the moon 【主席树+区间修改】
    [ 转载 ]hashCode方法的相关用法
    [ 转载 ]hashCode及HashMap中的hash()函数
    [ 原创 ] Map之HashMap的使用方法
    [ 转载 ] vue.js面试题一
    [ 转载 ] Java基础二
    [ 转载 ] Java基础
  • 原文地址:https://www.cnblogs.com/tomkillua/p/2609492.html
Copyright © 2011-2022 走看看