一、JS基本概念

1、命名规则

    • 变量名区分大小写(test和Test是两个不同的变量名),标识符采用驼峰命名格式,即:第一个字母小写,剩下的每个有意义的单词首字母大写;
    • 标识符第一个字符必须是以字母、_ 、$开始;
    • 标识符及变量名不能与关键字保留字一样;
    • 其他字符可以是数字、字母、下划线、或$。

2、注释

  • //单行注释
  • /**/多行注释

3、严格模式

支持严格模式的浏览器有:IE10+、Firefox 4+、Safari 5.1+、Opera 12+和Chrome。

用"use strict";此句话加在顶部告诉支持JS的引擎切换到严格模式。也可以在方法中制定函数在严格模式下执行。

ex: function doSomething(){

    "use strict";

     //函数体

  }

4、变量

定义变量用var操作符,ex:var message;这里定义了一个message的变量

全局变量在方法外面定义 或 不写var(方法里外)这个,由于不写var定义的全局变量难以维护、且不会马上定义而导致混乱所以一般情况下不推荐使用。

var message,found=flase,age=21,name="zhangsan";可以一句话用逗号将变量隔开同时定义多个能量,可以初始化也可以不初始化。

5、数据类型

五大基本数据类型:Undefined、Null、Boolean、Number、String

typeof操作符检测给定变量的数据类型,返回值如下:

undefind——值未定义

boolean——值是布尔值

String——值是字符串

number——值是数值类型

object——值是对象或者是null

function——值是函数,例如正则表达式

typeof是一个操作符不是函数,所以typeof()后面的括号不是必须的,所以typeof的格式是:

var msg="this is a cat";

typeof msg;  //"string"

typeof(msg);  //"string"

typeof(21);   //number

5.1、Undefined类型

出现Undefined的情况:定义了变量为赋值,

例如:1、var msg;

alert(msg);//undefined

2、alert(message);//对上为声明过的变量会报错误

5.2、Null类型

      null值表示空对象指针,所以用typeof会返回odject。如果定义一个变量用于将来保存对象,可先赋予null值,

这样在 用的时候只需判断Null值便可以知道是否已经报存了一个对像的引用。ex:

      var car=null;

      if(car!=null){

        //操作体

       }

        null值虽然派生自undefined,但用法却不同,undefined不用在书面上定义,它仅仅知道是否有这样一个变量或

     对象,而null用于意在保存而未保存的对象(例如:var car=null;),这样不仅体现空指针惯例,也有利于区分

     null和undefined.

5.3、Boolean类型

5.4、Number类型

5.5、String类型

5.6、Object类型

《JavaScript 高级程序设计》总结的更多相关文章

  1. 《FLASH PROGRAMMING 那些事》总结

    注明来自 http://www.ssdfans.com/?p=5589 以MLC为例: 对FGF(Floating Gate Flash)技术的,MLC programming一般分两步走:先prog ...

  2. Implementation of Serial Wire JTAG flash programming in ARM Cortex M3 Processors

    Implementation of Serial Wire JTAG flash programming in ARM Cortex M3 Processors The goal of the pro ...

  3. [原创] Keil uVision5 下载程序 add flash programming algorithm选项缺少需要的算法解决办法

    MDK开发环境从V4升级到V5后,支持包不再是集成到开发环境当中,而是封装在PACK中,需要自行安装,比较麻烦. 搭建MDK开发环境以及破解的方法,在前面的文章中有详细说明,这里不再赘述,有兴趣的可以 ...

  4. Turtelizer 2 provide JTAG Flash programming and debugging of ARM based boards via USB

    http://www.ethernut.de/en/hardware/turtelizer/ Introducing Turtelizer 2 Overview Turtelizer 2 had be ...

  5. 痞子衡嵌入式:恩智浦i.MX RT1xxx系列MCU硬件那些事(2.3)- 串行NOR Flash下载算法(J-Link工具篇)

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是J-Link工具下i.MXRT的串行NOR Flash下载算法设计. 在i.MXRT硬件那些事系列之<在串行NOR Flash X ...

  6. Programming Internal Flash Over the Serial Wire Debug <SWD> Interface -- EFM32

    1 Debug Interface Overview 1.1 Serial Wire Debug Serial Wire Debug (SWD) is a two-wire protocol for ...

  7. Error:Flash Download Failed-"Cortex-M3"

    Error:Flash Download Failed-"Cortex-M3"出现一般有两种情况: 1.SWD模式下,Debug菜单中,Reset菜单选项(Autodetect/H ...

  8. STM32F4读写内部FLASH【使用库函数】

    STM32F4Discovery开发帮使用的STM32F407VGT6芯片,内部FLASH有1M之多.平时写的代码,烧写完之后还有大量的剩余.有效利用这剩余的FLASH能存储不少数据.因此研究了一下S ...

  9. Flash Download Failed-"Cortex-M3"

    rror:Flash Download Failed-"Cortex-M3"出现一般有两种情况: 1.SWD模式下,Debug菜单中,Reset菜单选项(Autodetect/HW ...

  10. Stm32_调试出现 Error:Flash Download Failed-"Cortex-M3"

    rror:Flash Download Failed-"Cortex-M3"出现一般有两种情况: 1.SWD模式下,Debug菜单中,Reset菜单选项(Autodetect/HW ...

随机推荐

  1. JavaScript手绘风格的图形库RoughJS使用指南

    RoughJS是一个轻量级的JavaScript图形库(压缩后约9KB),可以让你在网页上绘制素描风格.手绘样式般的图形.RoughJS定义了绘制直线,曲线,圆弧,多边形,圆和椭圆的图元,同时它还支持 ...

  2. Java 面试题 百度/参考的答案

    "a=b"和"a.equals(b)"有什么区别? 如果 a 和 b 都是对象,则 a==b 是比较两个对象的引用,只有当 a 和 b 指向的是堆中的同一个对象 ...

  3. thinkphp3.2.3 HTML 页面跳转

    1.   http://域名/index.php(入口文件)/模块/控制器/方法 2.{:U('控制器/方法')}

  4. 详解PreparedStatement

    详解PreparedStatement /** * PrepareStatement 测试插入数据库 */ /** * 如果使用Statement,那么就必须在SQL语句中,实际地去嵌入值,比如之前的 ...

  5. java集合基础篇 简单总结

    昨天晚上看了编程思想4的持有对象,所以把学到看到的一些记记背背的方面给总结一下. java的容器主要分为两类,一个是实现了接口Collection的一类,还有一个是实现了Map接口的一类. 继承Col ...

  6. log4j配置输出日志文件

    在测试程序时,有时候运行一次可能需要很久,把日志文件保存下来是很有必要的,本文给出了scala程序输出日志文件的方式,同时使用本人的另一篇博客中介绍的将log4j.properties放到程序jar包 ...

  7. python学习——面对对象进阶

    一.isinstance和issubclass isinstance(obj,cls)检查是否obj是否是类 cls 的对象 class Foo: pass a = Foo() print(isins ...

  8. consonant_爆破音

    consonant_爆破音_[p]和[b].[t]和[d].[k]和[g] 声带震动:发音的重要作用. 爆破音:发音在一瞬间,不会延长气流. [p]:声带不震动,嘴唇咬在一起,有明显的气流.map.p ...

  9. 【转】PG数据库高级用法 之 12306 -- 链接

    这么牛的文章很少见,仅附链接,以示敬仰. https://github.com/digoal/blog/blob/master/201611/20161124_02.md

  10. CLR via c#读书笔记六:参数

    注:书本第9单参数 CLR默认所有方法参数都传值.引用本身是值引的,意味左方法能修改对象,而调用都能看到这些修改.值类型,传的是实例的一个副本,所以调用者不受影响. (和以前理解的不一样.默认都是传值 ...