该文章不详细叙述各知识要点的具体内容,仅把要点列出来,供大家学习的时候参照,或者检测自己是否熟练掌握了javascript,清楚各个部分的内容。

  1. 语句
  2. 注释
  3. 输出
  4. 字面量
  5. 变量
  6. 数据类型
  7. typeof/constructor属性
  8. 类型转换
  9. 关键字
  10. 运算符
  11. 字符集
  12. 对象
  13. 函数
  14. Arguments 对象
  15. 作用域/变量的生命周期
  16. 变量提升
  17. 严格模式 use strict
  18. 正则表达式
  19. 阻止默认操作
  20. 停止冒泡
语句
        分号(;)
        代码块
        条件语句:if...else... switch
        循环语句:for   for/in   while   do/while
        break; continue; break与continue的区别
注释
        //
        /*   */    
输出
        window.alert();
        document.write();
        innerHTML;
        console.log();
字面量
变量
        存储数据的容器
        以'字母','$', '_' 开头,由  ‘字母','$', '_', '数字'  组成
        大小写敏感
        重新声明JavaScript变量,该变量的值不会丢失。eg: var carname="Volvo"; var carname;//变量carname的值依然是“Volvo”
数据类型
        基本数据类型(原始数据类型)5种:string, number, boolean, null, undefined
        非基本数据类型(引用类型):Array, Object, Function, 原始数据类型对应的对象 eg: var s = new String(); 
        JavaScript拥有动态类型,相同的变量可用作不同的类型
typeof/constructor属性
        typeof操作符:检测变量的数据类型
        typeof [1,2,3,4]; //object
        typeof null; //object
        var person = null; //值为空,类型为对象 
        var person = undefined; //值为undefined,类型为undefined
   type function () {}; //function
        null 表示空对象引用;
        undefined表示没有设置值的变量;
 
   constructor属性

    [1,2,3,4].constructor //返回函数 Array() {[native code]}
        new Date().constructor //返回函数 Date() {[native code]}
    function () {}.constructor //返回函数 Function () {[native code]}
    {name:'John',age:34}.constructor //返回函数 Object() {[native code]}
 
类型转换
   5种不同的数据类型:string, number,boolean,object,function
   3种对象类型:Object, Date, Array
        2个不包含任何值的数据类型:null, undefined   
   
    通过javascript函数转换数据类型       
    1.数字转成字符串: String(123); 123.toString();
    2.布尔值转换成字符串:String(false); false.toString();
    3.日期转成字符串:String(Date()); Date().toString();
    4.字符串转成数字:Number("3.14");//返回3.14   Number(99 80);//返回NaN
             ParseFloat();//解析字符串,返回一个浮点数 
             ParseInt();//解析字符串,返回一个整数
             “ + ”可以将变量转换成数字
    5.布尔值转成数字:Number(false);//0
    6.日期转成数字:var d = new Date();
           Number(d);
           d.getTime();
        通过javascript自身自动转换
   1.当javascript尝试操作一个“错误”的数据类型时,会自动转换为“正确”的数据类型。
     2.当你尝试输出一个对象或一个变量时,javascript会自动调用toString()方法。
 
关键字
运算符
   算数运算符: +, -, *, /, %, ++, --
   赋值运算符:=, +=, -=, *=, /=, %=
   比较运算符:==, ===, !=, !==, >, <, >=, <=
   逻辑运算符:&&, ||, !
   条件运算符:? : 
字符集
   unicode
对象
   javascript对象是拥有属性和方法的数据。
   对象是变量的容器,是键值对的容器。
   访问对象属性的两种方式:eg: person.lastName; person["lastName"];
   定义对象的方法:
    1.工厂方式; 2.构造器函数; 3.原型方式; 4.混合方式(构造函数+原型方式);
    5.动态原型方式; 6.混合工厂方式。
函数
   JavaScript 对大小写敏感。关键词 function 必须是小写的,并且必须以与函数名称相同的大小写来调用函数。
   调用带参数的函数。
   带有返回值的函数,return 语句可以实现。
   函数声明:function functionName(parameters){ /*执行的代码*/}
        函数声明后不会立即执行,会在我们需要的时候调用到
   函数表达式:var x = function (a,b){ return a*b;} var z = x(3,4);//12
         以上函数实际上是一个匿名函数。
   Function()构造函数:var myFun = new Function("a", "b", "return a*b");
   函数提升:函数可以在声明之前调用。使用表达式定义的函数无法提升。
   自调用函数:函数表达式可以“自调用”。eg: (function (){var x = "Hello";})();
   函数可作为一个值使用
   typeof function(){};//function
   隐式参数/显示参数
   arguments:arguments.length;
   通过值传递参数:隐式参数的改变在函数外是不可见的。
   通过对象传递参数:在函数内部修改对象的属性会修改其初始值。
   toString()方法
   函数的调用:有4种调用方式,每种方式的不同之处在于this的变化。
         1.作为一个函数调用:函数不属于任何对象,默认为window对象的函数,this为全局对象window。
         2.函数作为方法调用:把函数定义为对象的方法,函数作为对象方法调用,this的值成为对象本身。
         3.使用构造函数调用函数:使用new关键字,创建新的对象,新对象继承构造函数的属性和方法,
                     this的值在函数调用时实例化对象(new object)时创建。
         4.作为函数方法调用函数:函数是对象,有它的属性和方法,call方法和apply方法,第一个参数成为this
          eg: function myFunction(a,b){return a*b;}
            myObject = myFunction.call(myObject,10,2); //返回20
            myObject = myFunction.apply(myObject,[10,2]); //返回20
Arguments对象   
   javascript函数的内置对象,包含了函数调用的参数数组。
作用域/变量的生命周期
   局部作用域,函数执行完毕后销毁
   全局作用域,页面关闭后销毁
 
   全局和局部变量即便名称相同,它们也是两个不同的变量。修改其中一个,不会影响另一个的值。
 
变量提升
   javascript中,函数及变量的声明都将提升到函数的最顶部。(声明提升,初始化不提升。)
严格模式 use strict
    "use strict" 指令在 JavaScript 1.8.5 (ECMAScript5) 中新增。它是一个字面量表达式,会在旧版本中忽略。
   严格模式下,不能使用未声明的变量。
   Internet Explorer 10 +、 Firefox 4+ Chrome 13+、 Safari 5.1+、 Opera 12+。
   严格模式新增了一些保留关键字:
      implements, interface, let, package, private, protected, public, static, yield.
正则表达式
   文本搜索/文本替换
   String对象的方法:
    search();     用法:str.search(/Runoob/i);
    replace();  用法:str.replace(/a/i,"RR"); 
    split();        用法:
    match();     用法:str.match("word"); 查找字符串中特定的字符,找到的话,返回这个字符;未找到,返回null。
   RegExp对象的方法:
    compile();  用法:        编译正则表达式
    exec();      用法:pattern.exec(str); 检索字符串中的指定值。找到,返回,找到的值;未找到,返回 null。
    test();       用法:pattern.test(str); 搜索字符串指定的值,根据结果并返回真或假。
   修饰符:
    i;不区分大小写 g;全局匹配 m;多行匹配
   量词:
    n?;0个或1个n
    n+;至少一个n
    n*;0个或多个
    n{X} ; X个n
    n{X,Y} ; 至少X个n,至多Y个n
    n{X,} ; 至少X个n
    n$; 以n结尾
    ^n; 以n开头
    ?=n; 任何其后紧接n的字符串
    ?!n; 任何其后不紧接n的字符串
   方括号:
    [abc];查找方括号之间的任何字符
    [^abc];查找任何不在方括号之间的字符
    [a-z0-9];查找给定集合内的任何字符
    [green|red|blue];查找任何指定的选项
   元字符:
    . \w \W \d \D \s \S \b \B \0 \n \f \r \t \v \uxxx \xdd \xxx
阻止默认操作
   preventDefault();
停止冒泡
   stopPropagation();
 
  (本文属个人总结,后期会持续更新,欢迎大家与我共同探讨...)
  

javascript必须知道的知识要点(一)的更多相关文章

  1. javascript必须知道的知识要点(二)

    该文章不详细叙述各知识要点的具体内容,仅把要点列出来,供大家学习的时候参照,或者检测自己是否熟练掌握了javascript,清楚各个部分的内容. 内建对象可划分为数据封装类对象.工具类对象.错误类对象 ...

  2. javascript的面向对象思想知识要点

    获取数据类型 typeof undefined:访问某个不存在的或未经赋值的变量时就会得到一个 undefined,用typeof 获取类型,得到的也是undefined;null:它不能通过java ...

  3. CentOs7下systemd管理知识要点

    centOs7的一个巨大的变动就是用systemd取代了原来的System V init.systemd是一个完整的软件包,安装完成后有很多物理文件组成,大致分布为,配置文件位于/etc/system ...

  4. 《JavaScript》 程序基本知识 数据类型。 {0912上} {0912下}

    JS脚本语言: 这是JaxaScript的全称名 JS是网页里面使用的脚本语言 JS是一个非常强大的语言 JS的基础语法 注释语法:  单行注释 //     多行注释 /**/ 输出语法:   双标 ...

  5. [CISCO] 转载:冲突域与广播域(区别、知识要点)

    [CISCO] 转载:冲突域与广播域(区别.知识要点) 1.传统以太网操作(Ethernet Connection Ethernet) 传统共享式以太网的典型代表是总线型以太网.在这种类型的以太网中, ...

  6. SDR软件无线电知识要点(三)EVM

    SDR软件无线电知识要点(三)EVM 信号质量如何评估 Noise Figure (NF) or sensitivity and Error Vector Magnitude (EVM) provid ...

  7. SDR软件无线电知识要点(一)噪声系数与噪声因子

    SDR软件无线电知识要点(一)噪声系数与噪声因子 信号质量如何评估 Noise Figure (NF) or sensitivity and Error Vector Magnitude (EVM) ...

  8. RIP 知识要点

    RIP知识要点: UDP:520 版本:v1(广播包更新) / v2(组播更新 224.0.0.9  ) 度量值:跳数(最多跳15跳,路由为16跳时路由不可达) =================== ...

  9. javascript之正则表达式基础知识小结

    javascript之正则表达式基础知识小结,对于学习正则表达式的朋友是个不错的基础入门资料.   元字符 ^ $ . * + ? = ! : | \ / ( ) [ ] { } 在使用这些符号时需要 ...

随机推荐

  1. 使用T-sql建库建表建约束

    为什么要使用sql语句建库建表? 现在假设这样一个场景,公司的项目经过测试没问题后需要在客户的实际环境中进行演示,那就需要对数据进行移植,现在问题来了:客户的数据库版本和公司开发阶段使用的数据库不兼容 ...

  2. JavaScript图片轮播,举一反三

    图片轮播,在一些购物网站上运用的不胜枚举,下面简单介绍一下图片轮播的实现. 如图 <!doctype html> <html lang="en"> < ...

  3. SLAM:飞行机器人的参数解析-分类

    在水电站存在的山区,公路运输效率极低,盘山公路绕行消耗大量时间,使用飞行机器人进行运输是合适的选择. 实现一位长辈在山区飞行的愿望,任重而道远 常见飞行机器人的参数解析:解读飞行机器人的基本类型及技术 ...

  4. PCL:描述三维离散点的ROPS特征(Code)

    前言: 三维点云为三维欧式空间点的集合.对点云的形状描述若使用局部特征,则可分为两种:固定世界坐标系的局部描述和寻找局部主方向的局部描述,ROPS特征为寻找局部主方向的特征描述. 1.寻找主方向(对X ...

  5. msmq消息队列使用场景

    MSMQ全称是Microsoft Message Queue——微软消息队列. MSMQ是一种通信的机制,因为是一种中间件技术,所以它能够支持多种类型的语言开发,同时也是跨平台的通信机制,也就是说MQ ...

  6. 如何查看Linux的CPU负载

    哪些工具可以查看 CPU 负载? 可以使用 top 命令.uptime 命令,特别是 top 命令,功能强大,不仅仅可以用来查看 CPU 负载. CPU 负载怎么理解?是不是 CPU 利用率? 要区别 ...

  7. charles修改下行参数

    1.charles抓包修改下行参数: 想要修改的手机展示展示信息页: 2.charle设置断点,在请求接口上一个上设置断点 菜单proxy->Breadkpoints Settings设置打开断 ...

  8. appium滑动

    在app应用日常使用过程中,会经常用到在屏幕滑动操作.如刷朋友圈上下滑操作.浏览图片左右滑动操作等.在自动化脚本该如何实现这些操作呢? 在Appium中模拟用户滑动操作需要使用swipe方法,该方法定 ...

  9. 34.初识搜索引擎及timeout机制

    主要知识点 1.对搜索执行结果的说明 2.timeout机制讲解 一.对执行 GET /_search 的结果的说明 执行结果如下(只保留部分) { "took": 29, &qu ...

  10. hdu 1250 简单大整数加法

    #include<stdio.h> #include<string.h> #define N 3100 int a[N],b[N],c[N],d[N],e[N]; int ma ...