在HTML中使用javascript (js高级程序设计)

在HTML中使用javascript

刚开始入门的时候觉得关于应用以及在html中只用javascript很简单,不需要进行学习。我又开始重温了一下红宝书,觉得还是有必要进行学习的。这是一个笔记!

script 元素插入有多种方式

属性 使用方式
async 延迟脚本,在网页完全解析后运行
charst 指定字符集,会忽略它的值
defer 会立即下载,但延迟进行执行
language 在大多数浏览器中已经废弃
type 默认为txt/javascript
src 表示要执行的外部文文件

javascript的代码是由上至下进行执行的

当我们需要在js代码中插入,script的时候,需要使用到转义字符

<script>
    function fun(){
        alert("</script>")
    }
</script>

标签的位置

js代码适用于放置于body下面。 因为浏览器是在遇到body才开始呈现页面的。

严格模式

关于严格模式,我了解的不多。

严格模式定义了一种不同的解析与执行模型,一些不确定以及不安全的行为会进行报错。

" use strict "

我需要在后面理解一下。

关键字的保留

不需要多记,例如:

while do break 之类的

变量

var 为定义一个变量,在执行过后会进行销毁

具体有局部变量和全局变量,我想后面需要谈一下自己的看法

数据类型

ECMAScipt 一共有5中简单的数据类型:

使用typeof可能返回字符串》

Undefined  未定义
Null       在   typeof 下不会出现   
Boolean     布尔值
Number    不出现    
String     不出现
以及一种复杂类型 Object  如果这个值是对象或Null
function  返回函数

Undefined

只有一个值,使用var声明变量但未对他进行初始化 ,则是Undefined

在为声明的情况下会报错,不会得到Undefined

var message;

alert(message == Undefined); -> (true)
alert(age); ->错误

Boolean

没搞懂

Number

在算术计算是,所有八进制和十六进制表示的数值都将转换为十六进制

浮点数不会相等,不能机械能比较

NaN

即非数值

他定义了一个函数: isNaN -> 确定参数是否" 不是数值 "

他会尝试转换数值

例:

alert(isNaN(NaN));   //ture
alert(isNaN("10"));  //flase
alert(isNaN(bulue)); //不能转换为数值

数值转换 :

布尔值 true 和 false 会分别转换为1 和 0

null // 0; Undefind // NaN

一般前导零会忽略

var num1 = Number("hello") //NaN
var num2 = Number("") //0
var num2 = Number("001100") //11

解析

parseInt() 解析为整数 , 不提供八进制的解析 , 但是可以指定解析

parseInt("1234NUM")  // 1234
parseInt("0XAF",16) //175

parseFloat() 解析为浮点数。

string类型

字符字面量 例如

转换字符串

toString()
var age = 1;
var num = age.toString();  //"1"
var found = true;
var Found = found.toString(); // "true"

如果转换的值是 Null或者 Undefind的情况下,可以使用String();

var value = ""; 
alert(String(value));  //"Undefind"

Object 类型

可以添加属性或者自定义对象

var obj = new Object();

2017.10.12

原文地址:https://www.cnblogs.com/ar13/p/7657746.html