zoukankan      html  css  js  c++  java
  • JavaScript基础学习笔记整理

    1.关于JS:
    (1)脚本语言——不需要编译的语言(常见有cmd,t-sql)----解释性语言;
    (2)动态类型的语言——1.代码只有执行到那个位置才知道那个变量中存储的是什么 2.对象中没有某个属性或方法时可以通过点语法来添加;
    (3)弱类型语言——都是通过var来声明;
    (4)基于对象的语言——并非面向对象的语言,而是基于对象,即它本身有对象,不需要创建,可直接拿来使用,可模拟面向对象的思想。

    2.JS的组成:
    (1)ECMAscript——JavaScript的一个标准;
    (2)DOM——文档对象模型;
    (3)BOM——浏览器对象模型。

    3.JS的几个基本概念:
    (1)变量:用于存储数据;
    eg. var name; 声明变量
    var name="zhang"; 初始化


    (2)数据类型:
    [1]Number——数字类型;
    [2]String——字符串类型;
    获取字符串长度:变量名.length;
    *隐式转换——浏览器自动将字符串转成数字;eg. var str1="10"; var str2=12;(只有+不会计算,其他的都会将字符串转为数字进行计算);

    [3]Boolean——布尔类型;
    [4]Null;
    [5]Undefined;
    [6]Object——对象;
    **总结:js中有六种数据类型,包括五种基本数据类型(Number,String,Boolean,Undefined,Null),和一种复杂数据类型(Object)。
    ***注意:
    1.var m=Null;此时m的数据类型为对象;若String(m);则m为null类型;???
    2.isNaN(变量名)——判断是否为数字。
    3.获取变量的数据类型用typeof;
    (3)类型转换:
    [1]parseInt();转整数;
    *10a——10;a10——第一个数不是数字不能转换;1a0——1;
    [2]parseFloat();转小数;
    ***用Number();比上面两种方法更严格;
    [3]toString();字符串类型;
    [4]Boolean();布尔类型;
    (4)运算符:
    [1]算数运算符(+-*/);
    [2]一元运算符(++ --)——只需一个数;
    [3]二元运算符——两个操作数;
    [4]三元运算符——三个操作数;
    [5]复合运算符(+= -= *= /= %=);
    [6]关系运算符(> < >= <= == ===(严格的等于) != !==);
    [7]逻辑运算符(&& ||);
    **()的优先级最高。
    (5)流程控制——代码的执行过程
    三种方式:
    [1]控制结构(从上往下,从左往右);
    [2]分支结构(if if-else switch-case 三元表达式);
    [3]循环结构(while do-while for for-in);
    **总结:大多数时候用if-else的语句都可以用三元表达式来表示。
    (6)数组:一组有序的数据(作用:一次性存储多个数据);
    声明:
    [1]通过构造函数创建数组:var 变量名=new Array();
    [2]通过字面量的方式创建数组:var 变量名=[];
    (7)函数——把重复代码封装起来,需要的时候直接调用即可。(作用:实现代码的重用)。
    语法:
    function 函数名(形参){
    函数体
    }
    调用:函数名(实参);
    **注意:函数名:直接输出函数名,为定义的代码。

    arguments对象伪数组
    arguments.length:获取函数调用时,传入了几个参数。
    arguments[i]:获取传入的每个参数的值。

    命名函数:函数有名字,可通过函数名直接调用。(重名时,后面的会将前面的覆盖掉)。
    匿名函数:函数没有名字,不能直接调用。
    函数表达式:把一个函数给一个变量,形成函数表达式(变量中存储的函数,这个变量就相当于一个函数)
    eg. var s=function (){};
    回调函数:函数作为参数使用,这个参数就是回调函数。
    eg. function f1(){
    return function (){
    console.log("1234");
    }
    }
    var m=f1();此时返回的是f1中的那个函数,那么就是一个函数
    m();这样就调用了返回的那个函数。

    作用域:
    ***注意:除了函数中定义的变量,只要用var全都是全局变量,不带var的变量(为隐式全局变量),即使在函数中定义,在外面也能使用。

    预解析:提前解析代码——把变量/函数的声明提前到当前所在作用域的最上面。
    eg. console.log(num);
    var num=10;结果为undefined——var num;被提到最前面了

    (8)创建对象的方法
    [1]调用系统的构造函数创建对象
    var obj=new Object();——实例化对象
    obj.name="z";——添加属性
    obj.eat=function(){};——添加方法
    [2]自定义构造函数创建对象
    function 函数名(){}
    var obj=new 函数名();
    [3]字面量的方式创建对象
    var obj={name:"a",age:22,f1:function (){}};

    (9)JSON格式的数据——以键值对的形式出现
    JSON也是一个对象
    var js={"name"="z","age"="22"};
    遍历这个对象要用for-in循环
    即 for( var key in js){ //key是一个变量,存储的是该对象所有属性的名字
    console.log(key+js[key]); //js[key]获取的是属性值——不能用js.key,这相当于往对象中添加一个key属性
    }
    (10)类型传递
    值类型的值存储在栈中——传递的是值,即复制一份值;
    引用类型:对象存储在堆上,地址存储在栈中——传递的是地址。
    (11)JS的三种对象
    [1]内置对象——Math; Date; String; Array;
    [2]自定义对象
    [3]浏览器对象

  • 相关阅读:
    File IO (Examples)
    File IO (AsciiToBinary / BinaryToAscii)
    Bit Operation (Message Compression/Decompression)
    Use GDB to debug code (2Example)
    Linked List in C (3Sorted List)
    在用户控件 ASCX 创建用户控件 ASCX
    恢复现有mongodb中的单个集合
    恢复现有mongodb中的单个集合
    WebForm与MVC混用
    WebForm与MVC混用
  • 原文地址:https://www.cnblogs.com/renyuqianxing/p/10261320.html
Copyright © 2011-2022 走看看