一   语法

  区分大小写,驼峰式书写方式;

  严格模式:“use strict”;    


二  数据类型

  a. 基本数据类型:

    undefined 声明变量未初始化

    null 空指针,可以释放内存

    Boolean      

Boolean true false
String 非空字符串 空字符串
Number 非零数值 0和NaN
Object 任何对象 Null
Undefined / undefined

    Number

      Number(),parseInt( ,基数),parseFloat();

      NaN 任何数值除以0,非数值;

    String

      toString() 不可用转换null、undefined;

      String() 可以转换null、undefined;

  b.复杂数据类型:

    object


三   操作符

  a.一元操作符:

    ++a,--a,a++,a--;

    +a  等同于Number(a);

    -a   等同于-Number(a);

  b.位操作符:

    负数以二进制存储,采用二进制补码;  

      1、求绝对值二进制码;

      2、反码;

      3、反码加1;

    按位非(~) 反码,等同于操作数的负值减1;

    按位与(&) 同为1才为1,反之为0;

    按位或(|)  1个1就为1,反之为0;

    按位异或(^) 同为1或0为0,反之为1;

    左移(<<) 左移不影响符号位;

    有符号右移(>>) 产生的空位由符号位填充;

    无符号右移(>>>) 产生空位由0填充;

  c.布尔操作符:

    逻辑非(!)    !! = Boolean();  

    逻辑与(&&)同为true才为true,反之为false    ---短路操作符;

    逻辑或(||)  同为false才为false,反之为true  ---短路操作符;

  d.乘性操作符:

    乘法  *;  

    除法  /;

    求模  %(取余);

  e.加性操作符:

    +   优先字符串,除非都是数值;  

    -   优先是Number;

  f.关系操作符:

    <   >   <=   >=

  g.相等操作符:

    ==    !=    强制转换比较;

    ===  !==  仅比较不转换;

  h.条件操作符:

    var max = (num1>num2)?num1:num2;

  i.赋值操作符:

    *=   /=  %=  +=  -+  <<=  >>=  >>>=

  j.逗号操作符:

    用于声明多个变量;


四   语句

  a.if 语句

  b.do-while    先执行,再判断;

  c.while         先判断,再执行;

  d.for

  e.for-in         枚举对象的属性;

  f.label           循环break和continue标签;

  g.

    break      跳出循环;

    continue 跳出本次循环;

  h.with           将代码作用域设置到一个特定的对象中

  i.switch


五   函数

  a.参数  通过arguments来访问;

  b.不能重载;


    

  

《JavaScript 高级程序设计》读书笔记三 基本概念的更多相关文章

  1. 《javascript高级程序设计》笔记三

    第三章 基本概念 任何语言的核心必然会描述这门语言最基本的工作原理.这部分内容对我们来说,读起来很乏味,甚至会产生困意,但这部分内容却是重要的!我有幸拜读<JavaScript高级程序设计> ...

  2. javascript高级程序设计读书笔记-事件(一)

    读书笔记,写的很乱   事件处理程序   事件处理程序分为三种: 1.html事件2. DOM0级,3,DOM2级别  没有DOM1 同样的事件 DOM0会顶掉html事件   因为他们都是属性  而 ...

  3. Javascript高级程序设计读书笔记(第三章)

    第3章 基本概念 3.4 数据类型 5种简单数据类型:undefined.boolean.number.null.string. typeof操作符,能返回下列某个字符串:“undefined”.“b ...

  4. 《JavaScript高级程序设计》笔记:基本概念(三)

    数据类型 ECMAScript中有5种简单数据类型(也称为基本数据类型):undefined,null,boolean,number和string. typeof typeof null会返回“obj ...

  5. javascript高级程序设计读书笔记

    第2章  在html中使用javascript 一般都会把js引用文件放在</body>前面,而不是放在<head>里, 目的是最后读取js文件以提高网页载入速度. 引用js文 ...

  6. JavaScript高级程序设计 读书笔记

    第一章 JavaScript 简介 第二章 Html中使用JavaScript 第三章 基本概念 第四章 变量,作用域,内存 第五章 引用类型 第六章 面向对象 第七章 函数表达式 第八章 BOM 第 ...

  7. JavaScript高级程序设计-读书笔记(6)

    第20章 JSON JSON是一个轻量级的数据格式,可以简化表示复杂数据结构的工作量 JSON的语法可以表示一下三种类型的值 l        简单值:使用与JavaScript相同的语法,可以在JS ...

  8. JavaScript高级程序设计-读书笔记(1)

    第1章 JavaScript简介 JavaScript是一种专为与网页交互而设计的脚本语言,由下列三个不同的部分组成: l        ECMAScript:提供核心语言功能: l        文 ...

  9. javascript高级程序设计 读书笔记1

    第二章  在HTML中使用JS 加载JS有三种:行内,head头部和外部链接JS   最好使用外部链接<script src="example.js" ></sc ...

  10. Javascript高级程序设计读书笔记(第六章)

    第6章  面向对象的程序设计 6.2 创建对象 创建某个类的实例,必须使用new操作符调用构造函数会经历以下四个步骤: 创建一个新对象: 将构造函数的作用域赋给新对象: 执行构造函数中的代码: 返回新 ...

随机推荐

  1. jmeter的各种调用

    1. 开发将dubbo协议的接口转化成了webservices后,jmeter直接添加http请求,输入网址就好,但是这种需要增加开发测试页面的工作量 2.jmeter自身无法调用zk连接服务器(Jm ...

  2. python requests库爬取网页小实例:爬取网页图片

    爬取网页图片: #网络图片爬取 import requests import os root="C://Users//Lenovo//Desktop//" #以原文件名作为保存的文 ...

  3. navicat使用ssh登录mysql报错:expected key exchange group packet from server

    转载自:https://blog.csdn.net/enweitech/article/details/80677374 解决方法: vim /etc/ssh/sshd_config shift+g ...

  4. 使用Typescript实现依赖注入(DI)

    前言DI总是和ico相辅相成的,如果想对DI有更多的了解,可以移步我的另一篇文章 依赖注入(DI)和控制反转(IOC),再次我就不多做赘述了. 前几天看见一道面试题,今天借这个话题想跟大家分享一下: ...

  5. 数据流图——从软考真题中学画数据流图DFD

    文章目录 题目 画顶层图 画0层图 解题技巧 题目 建议将题目复制到word后与此文分屏查看.后面需要多次查看题目. 某高校欲开发一个成绩管理系统,记录并管理所有选修课程的学生的平时成绩和考试成绩, ...

  6. 给pdf添加导航目录

    给pdf添加导航目录 我们下载pdf书籍经常需要以下导航功能,没有导航的pdf根本看不下,接下来会分享我添加导航的方法 首先需要下载工具软件,链接: http://t.cn/Exyss1G 打开软件, ...

  7. 一次HTTP请求响应涉及了哪些?

    HTTP请求和响应步骤 TCP/IP协议 TCP三次握手 HTTP协议 HTTP请求报文 HTTP响应报文 TCP四次挥手 HTTP请求和响应步骤 以上完整表示了HTTP请求和响应的7个步骤,下面从T ...

  8. getQueryString.js

    function getQueryString(name) { var reg = new RegExp("(^|&)" + name + "=([^&] ...

  9. java Quartz任务调度器

    1.quarz对java1.5实现的简单调度做了封装 /**     * quartz对任务调度进了高度抽象: 1调度器:2任务:3触发器     * Job接口(任务):定义需要调度的任务     ...

  10. 修改oracle的字符集操作方法

    cmd环境下进行以下命令行的操作--连接sqlplus / as sysdba--命令行shutdown immediate; startup mount ALTER SYSTEM ENABLE RE ...