JavaScript = ECMAScript + BOM + DOM

JavaScript脚本语言, 运行在浏览器上,无需编译, 轻量级的语言。

功能:让页面有执行逻辑的功能, 可以产生一些动态的效果

ECMAScript:

JS和HTML的结合方式:

内部JS样式:通过script标签引入JS代码



可以存在任意位置,html加载的顺序是自上而下, 所以js定义的位置不同, 执行的顺序也会不同.

外部JS样式:通过script标签的src属性引入





如果一个script标签引入了外部的js文件, 就不要在标签内部定义js代码.

引入外部js时, 标签不要使用自闭合标签

注释

  1. 单行注释://注释内容
  2. 多行注释:/注释内容/

数据类型(原始):

number:

数字。 整数/小数/NaN(not a number 一个不是数字的数字类型)

string:

字符串。 字符串 "abc" "a" 'abc'没有字符这个概念,只有字符串

boolean:

true和false

null:

一个对象为空的占位符(老bug)

undefined:

未定义,如果一个变量没有给初始化值,则会被默认赋值为undefined





null的类型是Object是个bug,现在被认为是对象的占位符,其实它仍然是原始值

数据类型(引用):

变量(弱类型):

var 变量名 = 初始值;

在js中, 变量的类型和变量中存储的数据相关, 和声明无关.

运算符:

一元运算符:只有一个运算数的运算符

++,-- , +(正号)

在JS中,如果运算数不是运算符所要求的类型,那么js引擎会自动的将运算数进行类型转换

string转number:按照字面值转换。如果字面值不是数字,则转为NaN(不是数字的数字)



boolean转number:true转为1,false转为0



算数运算符

      • / %

赋值运算符

= += -+

比较运算符

< >= <= == ===(全等于)

类型相同:直接比较

字符串:按照字典顺序比较。按位逐一比较,直到得出大小为止。

类型不同:先进行类型转换,再比较

===:全等于。在比较之前,先判断类型,如果类型不一样,则直接返回false

逻辑运算符

&& || !

其他类型转boolean:

number->boolean,0 = false,其他=true。

string->boolean,除了空字符串其他都是true。

对象->boolean,所有的对象都是true。

null, undefined,NaN, 0, ""->boolean这些值为false



三元运算符

? : 表达式

var a = 3;

var b = 4;

var c = a > b ? 1:0;

语法:表达式? 值1:值2;

判断表达式的值,如果是true则取值1,如果是false则取值2;

比较运算符:

字符串比较,按照字典顺序(ascii码大小)对应位置字母逐一比较。

逻辑控制语句:

if,for,switc,hwhile

输出到控制台:

console.log("");

对象:JS并不是面向对象的语言, 仅仅支持对象.

Function:函数(方法)对象

特点

  1. 方法定义是,形参的类型不用写,返回值类型也不写。
  2. js中函数没有重载, 如果多次定义同名函数, 则会覆盖. 类似于给一个变量多次赋值
  3. 函数的调用仅和名称有关, 和参数列表无关.arguments,封装所有的实际参数
  4. 函数既是一个对象, 又代表一段代码块.所以比较特殊, 它既可以传递值, 也可以直接执行.

    var fun = function(){//函数体....}

    var fun2 = fun;

    var xxx = fun2();

Array:数组对象



定义

var arr = [元素列表];

特点:

数组中数据的类型是任意的,可变的.

数组的长度也是可变的

日期对象Date



正则

正则表达式

不是js独有的, 各个语言通用的表达式.用于表示一个指定格式的字符串.

作用:

判断指定字符串是否符合预先设定的格式规则.

	[]代表单个字符的取值范围.
\w 代表单词字符, 等价于 [a-zA-Z0-9_]
\d 查找数字,等价于 [0-9_] n+ 匹配任何包含至少一个 n 的字符串。
n* 匹配任何包含零个或多个 n 的字符串。
n? 匹配任何包含零个或一个 n 的字符串。
n{X} 匹配包含 X 个 n 的序列的字符串。
n{X,Y} 匹配包含 X 至 Y 个 n 的序列的字符串。
n{X,} 匹配包含至少 X 个 n 的序列的字符串。
正则对象 RegExp
创建:
var reg = /正则/;
方法:
test()
如果正则表达式没有指定开始和结束, 代表判断指定字符串中是否包含指定规则的字符串.
所以我们一般推荐添加上字符串开始和结束的标识进行判断
^:开始
$:结束



全局对象Global

url编码:







parseInt():









eval():



JavaScript之ECMAScript的更多相关文章

  1. Javascript与ECMAScript

    我们经常习惯性认为Javascript就是ECMAScript,但其实不是这样的. ECMAScript是一种脚本在语法和语义上的标准. 主要包括:语法.类型.语句.关键字.保留字.操作符.对象. 它 ...

  2. javascript、ECMAScript、DOM、BOM关系

    ECMAScript,正式名称为 ECMA 262 和 ISO/IEC 16262,是宿主环境中脚本语言的国际 Web 标准. ECMAScript 规范定义了一种脚本语言实现应该包含的内容:但是,因 ...

  3. JavaScript 、ECMAScript、commonJS 发展历史 与标准化发展

    本文介绍下JavaScript和 ECMAScript的诞生及发展历史,以及标准化过程. 一.JavaScript诞生 1994年,网景公司(Netscape)发布了Navigator浏览器0.9版. ...

  4. JavaScript基础 -- ECMAscript

    ECMAScript是一种由Ecma国际(前身为欧洲计算机制造商协会,英文名称是European Computer Manufacturers Association)通过ECMA-262标准化的脚本 ...

  5. JavaScript组成部分——ECMAScript、DOM、BOM、

    1.JavaScript组成部分 虽然 JavaScript 和 ECMAScript 通常被人们用来表达相同的含义,但 JavaScript 的含义却比ECMA-262标准中规定的要多得多. 一个完 ...

  6. Javascript和ECMAScript二三事

    来自<javascript高级程序设计 第三版:作者Nicholas C. Zakas>的学习笔记(一) Javascript是一种专为与网页交互而设计的脚本语言,由下列三个不同部分组成: ...

  7. Javascript组成--ECMAScript,DOM,BOM

    ECMAScript 部分 ECMAScript是一个标准,JS只是它的一个实现,其他实现包括ActionScript; “ECMAScript可以为不同种类的宿主环境提供核心的脚本编程能力”,即EC ...

  8. JavaScript(ECMAScript) with 语句

    有同事,爱尝鲜,JavaScript ECMAScript with 语句,找了半天不知道局部变量的出处,原来是with语句搞得鬼. http://www.w3school.com.cn/js/pro ...

  9. JavaScript:ECMAScript 引用类型

    ylbtech-JavaScript:ECMAScript 引用类型 1. 返回顶部 2. ECMAScript 引用类型返回顶部 引用类型通常叫做类(class). 本教程会讨论大量的 ECMASc ...

随机推荐

  1. laravel5.6 操作数据 Eloquent ORM

    建立Users模型 <?php namespace App\Model\Eloquent\Admin; use Illuminate\Database\Eloquent\Model; class ...

  2. ZOJ 3329 One Person Game(概率DP,求期望)

    http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=3754 题目大意: 有三个骰子,分别有K1,K2,K3个面,一次投掷可以得到三个 ...

  3. Java日期处理类的相关使用

    java常用类-java日期处理类 Date类 Date类是jdk给我们提高的标准日期类,在java.util包下: 示例代码: import java.util.Date; public class ...

  4. 大数据学习笔记之Zookeeper(四):Zookeeper实战篇(二)

    文章目录 4.1 分布式安装部署 4.2 客户端命令行操作 4.3 API应用 4.3.1 eclipse环境搭建 4.3.2 创建ZooKeeper客户端: 4.3.3 创建子节点 4.3.4 获取 ...

  5. 题解1235. 洪水 (Standard IO)

    Description 一天, 一个画家在森林里写生,突然爆发了山洪,他需要尽快返回住所中,那里是安全的.森林的地图由R行C列组成,空白区域用点“.”表示,洪水的区域用“*”表示,而岩石用“X”表示, ...

  6. C#后台去除字符串最后一个字符

    string str = "a,b,c,"; int length = str.length; //获取字符串长度 str = str.substring(0,length-1); ...

  7. servlet--response、request

    请求响应流程图 response 1       response概述 response是Servlet.service方法的一个参数,类型为javax.servlet.http.HttpServle ...

  8. jQuery基础--选择器

    2. 选择器 2.1. 什么是jQuery选择器 jQuery选择器是jQuery为我们提供的一组方法,让我们更加方便的获取到页面中的元素.注意:jQuery选择器返回的是jQuery对象. jQue ...

  9. No-sql之redis常用命令

    转自:http://blog.csdn.net/nicewuranran/article/details/51793760 No-SQL之Redis 介绍 Redis是一种基于内存存储的key-val ...

  10. Python 学习笔记18 异常处理

    我们在编码的过程中,难免会遇到一些错误和异常, 这时候程序会异常退出,并且会抛出错误信息: 比如: print(1/0) ''' 输出: Traceback (most recent call las ...