一、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. mint-ui message box 问题;

    当引用 mint-ui message box 的 出现的问题,我暂时是不知道为什么: 官网是这样写的: 于是 我也这么做的:(这里用小写,具体我也不清楚,毕竟文档上写的也不是很清楚,但是只有这样写, ...

  2. React基本语法

    React 一.导入     0.局部安装 react 和 react-dom         npm install --save-dev react react-dom       1.react ...

  3. java的值传递机制

    一.练习:编写Java程序,将二维数组中的行列互调显示出来. 代码1为自己编写: package com.xxgpra.CH6; public class Hangliehudiao_pra4 { p ...

  4. MySQL集群-PXC搭建以及使用innobackupex工具进行全局备份和增量备份

    环境:centos7 vm1:10.154.47.236 vm2:10.154.52.189 vm3:10.105.12.50 目的:pxc使用三个节点构建mysql集群,使用innobackupex ...

  5. mfc和qt的区别

    注:引用来源 http://wenda.chinabaike.com/b/30934/2013/1208/707410.html QT使用的编译器是MinGW,即Linux下的GCC移植到window ...

  6. Linux字符设备驱动--No.3

    字符驱动(按键)初始化函数分析: int charDrvInit(void) { devNum = MKDEV(reg_major, reg_minor); printk(KERN_EMERG&quo ...

  7. 20145202马超 2016-2017-2 《Java程序设计》第二次实验

    去年完成的一部分(http://www.cnblogs.com/tuolemi/p/5728826.html) 今年我又从新做的,这是分别5个问题做出来的结果 下面这个是去年没有做的,是用来建模的,感 ...

  8. EnterpriseDB公司的 Postgres Solution Pack (一)

    下载地址: http://www.enterprisedb.com/products-services-training/products/postgres-plus-solution-pack/do ...

  9. Python3 之选课系统

    项目介绍:项目名称:(oldboy选课系统)项目功能: 分为 学员视角, 老师视角 , 管理员视角 学员视角{ (注册 登录 个人中心 选课 学习 上课) 登录 就是登录 注册: 填写 资料 信息 完 ...

  10. Python-内置函数4

    import time # 返回时间戳 t=time.time() print(t) name="one" ''' bin() oct() hex() bytes() ascii( ...