javascript高程3 学习笔记(一)

javascript简史

  • 微软IE和网景在浏览器上的竞争
  • ECMAScript,由ECMA-262定义,提供核心语言功能 `ECMA 欧洲计算机制造商协会
  • 一个完整的Javascript的组成有 核心(ECMAScript),文档对象模型(DOM),浏览器对象模型(BOM)

在html中使用javascript​

js的三种调用方式javascript



<script> init(); </script> <script type="text/javascript" src="main.js"></script> <input type="button" onclick="javascript:alert('test')">

思考: 比较这几种方式的优劣,效率上有什么差别性?html

<script src="" async/defer></script>
<!--html5 新属性-->

思考: 用法,范围,比较和defer的区别html5

async,表示当前脚本没必要等待其余脚本,也没必要阻塞文档呈现,不能保证异步脚本按照它们在页面中出现的顺序执行
defer,能够让脚本在文档呈现后再执行,延迟脚本老是按照它们的顺序执行的。java

< noscript>元素,当浏览器不支持javascript脚本浏览器


javascript数据结构

​ECMAScript有以下5中基本数据结构数据结构

Undefined Boolean Null Number String异步

typeof 操做符,用来检测给定变量的数据类型async

  • Undefined - undefined
var message;
// var age
alert(typeof message);
alert(typeof age);

结果都是undefined,message 声明没初始化,使用var生命变量但未对其进行初始化的,默认undefined;age没有进行声明,传递给alert()函数会致使一个错误,对于未声明变量这么操做没什么意义好比delete,也是返回undefined。因此函数

对变量进行变量声明能经过typeof,辨别变量没有被初始化而不是没声明
- Null -null 表示空对象指针 因此typeof 返回object
通常咱们在声明一个对象变量时候,应该让变量保存null,这样经过typeof 即可以知道,能够区分null和undefined
- Boolean - boolean 只有true/false,Boolean() 转换其余数据类型 为true/false
- Number
1. 对于float数,为何0.1+0.2 != 0.3?
2. NaN(Not a Number)的设计初衷,表示一个本该返回数字却没返回数字的状况,好比1/0
3. 数值转换 Number() parseInt() parseFloat()设计

  • String 字符串类型
  • Object ECMAScript的对象是一组数据和功能的集合
相关文章
相关标签/搜索