javascript(动态语言,var单一变量声明符)
既面向对象,也面向过程
编辑器:
sublime vscode webstrom
/*
We b 标 准
目前所通常所说的WEB标准一般指:
网站建设采用基于XHTML语言的网站设计语言,
WEB标准中典型的应用模式是 “
css+div ”()。
实际上,WEB标准并不是某一个标准,而是一系列标准的集合。
*/
// 对数据的计算 :
可正常计算的范围 ———————— 小数点 前 16位 , 后 16位
// js 的逼格:
- 解释性语言 ——(不需要编译成文件)跨平台
翻译的类别:
编译 ——(通篇翻译,把所有代码都阅读一遍,最后生成系统可执行的文件)
编译性语言例如: c c++
优点:快 不足:移植性不好(不跨平台)
解释 ——(读一行代码,翻译一行代码,执行一行,不生成特定文件)
解释性语言例如:javascript php pyton
优点:跨平台
不足:稍微慢
- 单线程 (javascript 引擎)
- ECMA 标注 ——为了取得技术优势,微软推出了JScript, CEnvi 推出 ScriptEase, 与JavaScript 同样在浏览器杀上运行。为了统一规格 JavaScript 兼容于 ECMA 标准,因此也被称为 ECMASCript。
结构( html )
行为 ( js ) ---------------- 相分离
样式 ( css )
j s 三大部分 :
ECMAScript
DOM
BOM
浏览器 的 组成:
1. shell部分(外壳)
2. 内核部分 : 渲染引擎(语法规则和渲染) js引擎 其他模块
主流浏览器
浏 览 器 内 核
IE ———————————————————— trident
Chrome (谷歌)————————————— webkit/blink
firefox (火狐) —————————————— Gecko
Opear ———————————————————————— presto
Safari (平果和谷歌研发) —————————— webkit
变量命名规则:
1. 变量命名必须以英文字母、下划线 _ 、 $ 等字符开头
// 2. 变量名可以包括 英文字母、下划线 _ 、 $ 、 数字
// 3. 不可以用 系统关键字、保留字 作为变量名
基本语法 ——— 值类型-----数据类型:
// 1.不可改变的原始值(栈数据 stack)---- Number, String, Boolean,
undefined, null
// 2.引用值 (堆数据 heap) ---- array(数组), object, function(函数)
错误分成两种(一个代码块错误不会影响到另一个代码块):
// 1. 低级错误(语法解析错误) 2.逻辑错误(标准错误,情有可原)
// 运算操作符:
“ + ” ---------- 1.数学运算、字符串链接 2.任何数据类型加字符串都等于字符串
其他运算符 " - "," * "," / "," % "," = "," () "
优先级
"= " 最弱 , " () " 优先级最高
逻辑运算符 ‘ && ’ ,‘ || ’ ,‘ ! ’
// 先看第一个表达式转换成布尔值的结果,若果结果为真,那么它会看第二个表达式转换为布尔值
的结果,
// 然后如果只有两个表达式的话,只看到第二个表达式,就可以返回该表达式的值了。
undefined , null , NaN , " " , 0 , false ==> false;
switch … case break continue 语句
一个小例子
var data = window.prompt(‘input’);
switch(data){
case “moday” :
console.log(‘working’);
break;
case “tuesday”:
console.log(‘working’);
break;
case “wednesday”:
console.log(‘working’);
break;
case “thursday”:
console.log(‘working’);
break;
case “friday”:
console.log(‘working’);
break;
case “周六”:
console.log(‘relaxing’);
break;
case “周日”:
console.log(‘relaxing’);
break;
}
/*
delete 操作
一旦经历了 var 的操作,所得出的属性,window ,这种属性叫 不可配置性属性
而‘ 不可配置的属性 ’,delete 对其无法实现删除 。
delete 只能删除 可配置属性——直接赋值的,没有经过 var 操作
typeof() 能返回六种数据类型 :
1、object
2、number
3、string
4、boolean
5、function (函数、方法)
6、undefined (未定义)
typeof( arr 、 null 、 { } ) ----> object(对象)
类型转换: 显示类型转换 隐式类型转换
显示类型转换:
Number(mix)
parseInt(string , radix)
parseFloat(string)
tosting(radix)
String(mix)
Boolean()
隐式类型转换(隐式调用显式的方法):
isNaN() -----> number()
++/–(加加/减减)-----> number()
+/- (一元正负)----->number()
+(加号)-----> string()
(-、*、/、%) ----->number()
(&&、||、!) -----> boolean()
(>、<、>=、<=) -----> 两种情况:
1.当数字和字符串比较时,换成数字的比较;
2.当字符串和字符串你比较时,看RSC码
(==、!=)-----> boolean()
undefined == null
(注意: null != null )
===(绝对等于)-----> 只有等号两边完全相等时,才是真
( NaN === NaN 的结果为 false)
! = =(绝对不等于)-----> 等号两边不同为真