- JS的理解
基于事件,基于用户操作。 - JS的组成
三个部分: 网页的组成:HTML+css+JS
Ecmascript:核心语法
Bom: 使得JS 具有操作浏览器的办法
Dom: 是的JS能够操作HTML文档 - 代码的执行过程
机器---- 0 1
代码------- 0 1
指令: 指令集 精简指令集和复杂指令集
运算上不一样,使用的0 1 代码不一样
加法运算: 0 1 1 0 1 1
计算机是没有减法运算的。 也没有除法与乘法运算。
0 1 代码:基本没人看得懂
汇编语言:能看懂的人稍微多点。 如:嵌入式开发人员。
JavaScript 经过ECMA转变成机器代码。这个解析器是内置在浏览器里面的。浏览器直接执行。不经过cpu。 动态解析。
Java语言,必须先经过编译然后才能运行。
进制。
二进制: 0 1 表示8:1000
八进制:0-7
十六进制:0-9 a-f。深入理解JS
基于事件驱动的语言
嵌入式脚本语言。嵌入式:嵌入到其他应用程序中运行的。
脚本语言:脚本语言是无法做应用的。
直译式脚本语言:直接解析运行
动态类型与弱类型:变量的赋值。
基本原型的。面向对象的概念。JS的语句
一行一句,分号结束JS的执行顺序
从上到下,依次执行。JS 的注释
//单行注释
/**/多行注释标识符:表示符命名规则 名字 类名 变量名, 函数名
命名发:
驼峰命名法 下划线命名法 匈牙利命名法代码区块
每一个大括号里面的就是一个区块
If(){
代码区块
}匈牙利命名法:
类型前缀+首字母大写变量的申明有赋值
申明:
var 变量名;
var是申明变量的关键字。关键字就是系统已经使用的单词,
用户在自定义标识符的时候就不能够使用这个字符串了。
在申明变量的时候,可以没有var,但是必须在申明的时候直接赋值。
没有var与有var的区别
作用域的问题:
undefined:未定义,或者定义了没有值。
变量在没有申明的情况下,如果直接使用会产生一个not defined(未定义)的错误。
变量申明了,但是没有给具体的值,这个时候变量的内部就是undefined(未定义)。但是本意是赋值
变量的提升:就是在所有的代码执行之前,首先要执行的是代码的申明,比如变量的申明,函数的申明。但是函数内部的变量是在函数执行的时候申明的,而不是函数定义的时候申明的。
//代码是从上到下:错误的
//代码是先定义:后执行。
总结:所以习惯性的,我们会把函数的定义以及变量的定义都放在代码开始的地方,
代码格式:
var 。。。;
var 。。。;
var 。。。;
function。。。。
function。。。。
function。。。。
function。。。。
代码执行。
JS的变量是区分大小写的。
如何使用一行代码定义多个变量
逗号操作符:表示的是一系列操作。一起执行的意思。
var a=1,b=2, c=3;
分号操作符:表示的是一句代码的结束
var a=1;
var b=2;
var c=3;
等号操作符:赋值。把后面的值给前面。
- JS的数据类型
数据类型:数据的类型
数据类型是语言为了内存所做的优化。
JS的数据类型有那些?
number 数字类型,整数与小数都属于数字类型。
String 字符串类型,
object 对象类型
function 函数类型
undefined 未定义,和申明没有关系。
Boolean 布尔值
null 空类型
JS有多少种数据类型
细化 7种
粗略的 5种 + null(可以划在object)
究极的 JS一切皆对象。所以只有object - tyoeof 能够检测一个数据的数据类型