一、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. window.moveTo(),window.moveBy()不生效

    window.moveTo()和window.moveBy的菜鸟教程介绍: moveTo() 方法可把窗口的左上角移动到一个指定的坐标. window.moveTo(x,y) moveBy() 方法可 ...

  2. 随机返回经典语句接口API

    api接口:https://www.liutianyou.com/api/?type=js&charset=utf-8 可以单独将上面链接,在浏览器中查看效果 ​ 这是get请求,参数:typ ...

  3. Delphi并行库System.Threading 之ITask 1

    不知什么时候,也许是XE8,也许是XE8之前 .Delphi里面多了个System.Threading的并行库. 虽然己经有非常棒的第三方并行库QWorker,但我还是更喜欢官方的东西. 下面是一段使 ...

  4. Django自定制分页功能

    URL: """django_paginner URL Configuration The `urlpatterns` list routes URLs to views ...

  5. python网络编程之协程

    本节的主题是基于单线程来实现并发,即只用一个主线程(很明显可利用的cpu只有一个)情况下实现并发,为此我们需要先回顾下并发的本质:切换+保存状态 cpu正在运行一个任务,会在两种情况下切走去执行其他的 ...

  6. C指针(2)——指针在函数中的应用(程序讲解)

    3-1.c指针用作函数参数 #include<stdio.h> typedef unsigned char uint8_t; //类型自定义,通过typedef语句重新把unsigned ...

  7. 【转】I2C总线相关知识

    1. I2C access 1.1. I2C introduction I2C(Inter-Integrated Circuit)总线是由NXP恩智浦半导体公司在80年代开发的两线式串行总线,用来进行 ...

  8. tensorflow 教程 文本分类 IMDB电影评论

    昨天配置了tensorflow的gpu版本,今天开始简单的使用一下 主要是看了一下tensorflow的tutorial 里面的 IMDB 电影评论二分类这个教程 教程里面主要包括了一下几个内容:下载 ...

  9. Git学习系列 (一)

    打算花一个半月的时间学完Git.宏观上有更深的认识. 参考: Pro Git(中文版) 一.历史 本地版本控制系统 最原始的做法.复制整个项目目录的方式来保存不同的版本,或许还会改名加上备份时间以示区 ...

  10. itop4412开发板添加开机启动程序

    1. 先编写代码,以helloworld.c为例子 #include<stdio.h> #include<unistd.h> //这个文件是什么 main() { ; ) { ...