javascript笔记

JavaScript

javascript的作用:

游戏、页面动效、表单验证、服务端、智能检索。
js:运行在客户端(浏览器)的解释型脚本语言。
高级语言----->二进制语言 翻译
翻译: 编译型和解释型

  • 解释型: 代码从上向下一边解释一边运行,javascript。由js引擎来进行的。
    浏览器内核:渲染引擎,js引擎。
  • 编译:一次性编译成可以执行的二进制文件,统一运行。java c
  • JavaScript一种在浏览器中解释运行的脚本语言,它的解释器被称为JavaScript引擎,为浏 览器的一部分, 是广泛用于客户端的脚本语言,最早是在HTML网页上使用,用来给HTML(HTML5)网页 增加动态功能。
javascript历史

1995年,网景公司发明了一款navigator0.9版本的浏览器,公认成熟。

  • 缺点:不能交互,不能进行表单验证,网景公司找到布兰登·艾奇,来开发livescript的语言。用于表单验证、交互,在navigator2.0版本上运行。

1996年,微软公司在exporer3.0上运行了jscript.
1997年,网景公司把javascript1.0版本交给ECMA(欧洲计算机制造商协会)做标准化。

JS和H5的关系

H5狭义上,指HTML的第五个版本;广义上指web前端的所有技术,由于web前端是在H5出 现后开始火爆起来,所 以,习惯上把web前端也叫H5。web前端开发也叫H5开发,包括 HTML,CSS,JavaScript,等一切前端技术。
B/S架构
browser:浏览器 客户端
server: 服务器 服务端
JS组成:ECMAS如此平台(语法),DOM,BOM

  • DOM:document object model 文档对象模型
  • BOM:browser object model 浏览器对象模型
  • JS本质: 可以通过JS操作文档,浏览器
JavaScript编写以及如何运行JS代码

JS有3种书写位置,分别是行内、内嵌、外部
行内式:

//<button onclick='alert(1)'>按钮</button> 

外链式:

<script src="my.js"></script>

外链式不要再script、标签中写代码,如果想写,在下面写

<script></script> 

内嵌式:
写在HTML结构的底部,为了能够获取页面中的内容才写在最下面的。

  • // 单行注释:代码的解释说明
  • /**/ 多行注释
变量
  1. 变量的概念: 存储数据的容器
  2. 变量的定义:
    2.1 先声明,后赋值
    var x;---->声明变量
    x = 10;---->赋值
    2.2 声明的同时赋值
var y = 20;
// 注意:变量一定要先声明后赋值

2.3 可以同时声明多个变量,在进行赋值

var x,y,z;
x = 10;
y = 20;
z = 30;
  1. 变量的命名规范和规则
    3.1 变量的命名有字母、数字、下划线、美元符号。现在已经支持汉字,但不推荐。
    3.2 不能以数字开头。
    3.3 不能是关键字和保留字。
    3.4 区分大小写。
    3.5 规范:见名识意。
    3.6 驼峰命名法
    如果多个单词组成,第一个单词全部小写,从第二个单词开始,首字母全部大写。
数据类型:对数据的分类

数据类型的种类:
基本数据类型: 字符串(string),数字(number),未定义(undefined),空(null),布尔(Boolean)
复杂数据类型:对象。
检测数据类型:typeof 关键字
1.1 字符串(string):单引号或双引号引起来“123” “true”
数字和字符串是可以进行拼接的。
1.2 数值类型(number):整数,小数,二进制,八进制,十六进制
10 ,20.1 ,-10,0100110,054,0xabef01,NAN:number类型,但是不是数字
nan的由来:在参与运算的过程中,出现了无法表示的数字的时候。
1.3 undefined 未定义
var x;
console.log(x); ---->只声明,未赋值。
1.4 Boolean 布尔值
console.log(true); 是 真 对
console.log(false); 否 假 错
console.log(typeof true);—>boolean 布尔类型
1.5 null 空
var a=null; 后期a将重新赋值成对象
console.log(typeof a); object

字符串转为数值类型
  1. Number()
    结论一:Number()可以将冲数字的字符转为数值
    结论二:Number()可以将非纯数字的字符串转为NAN,也是数值类型
  2. parseInt()
    结论一:parseInt()可以将纯数字的字符串转为数值
    结论二: parseInt()可以将数字开头的字符串转为数字
    结论三: parseInt()可以将非数字开头的字符串转为NaN,也是属于number类型
    结论四: parseInt()保留整数
  3. parseFloat()
    结论一: parseFloat()保留小数点后面的数字
    结论二: parseFloat()数字开头的字符串转为数字
  4. 隐式转换 - * / %
    var str = '100';//字符串
    console.log(typeof str);//  检测str的类型为string
    console.log(typeof Number(str));//通过Number()将str转换为数字,再进行检测
 结论:
 1. Number()和parseInt()的不同点:  
      parseInt()可以将数字开头的字符串转为数字,Number()只能将纯数字转为数字类型

 2. parseInt()和parseFloat()的不同点:
       parseInt()将字符串转为整数
       parseFloat()将字符串转为 小数

转为Boolean类型:

  1. Boolean()
    console.log(boolean(x));
  2. !!
    console.log(!!x);

数字转为字符串

  1. num.toString()
    ring(num)

算术运算符:+ - * / %
+: 拼接 (字符串和字符串,字符串和数字相加)
+: 求和

赋值运算符

    var a = 10; //将10赋值给10
    a += 20;  //等价于 a = a+20  将左边a和右边20求和,再重新赋值给a

数值类型:10 10.1 NaN

     NaN: 非数字的number类型
     isNaN() :帮助我们检测是否是非数字,是非数字结果为true,不是非数字结果是false
             底层会调用Number()方法

关系运算符: > < >= <= == != === !==
关系运算符比较出的结果是布尔类型值

console.log(10==‘10’); //只比较值,不比较类型

console.log(10===‘10’);//既比较值,也比较类型

逻辑运算符
&&(与) ||(或) !(非)

     &&: 与   

    console.log(3>5>4);// 错误
    console.log(3>5&&5>4); // 一假即假  false

||: 或 一真即真(整个表达式有一个真,结果就是真)

! : 非 取反

a++;在a的基础上加1
++a: 在a的基础上加1
区别:单独使用时,都是自身加1
在参与输出,赋值,等操作时,a++和++a是有区别的
1. a++ 先输出a,再自身加1
2. ++a 先加1,再输出

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值