Javascript笔记

1、什么是Javascript

1.1、概述

JavaScript 是一门世界上最流行的脚本语言​

java、JavaScript

一个合格后端人员,必须精通Javascript

1.2、历史

ECMAScript 它可以理解为是Javascript的一个标准

2、快速入门

2.1、数据类型

数值,文本,图形,音频,视频…

变量

var 

number

JS不区分小数和整数,Number

123  //整数123
123.1   //浮点数123.1
1.123e3   //科学计数法
-99    //负数
NaN    //not  a    number
Infinity   //表示无限大

字符串

‘abc’ ‘‘abc’’

布尔值

true false

逻辑运算

&&        两个真,结果真
||        一个真  结果真
!         真为假,假为真

比较运算符

=
==     等于(类型不一样,值一样, 也会判断为true)
===    绝对等于(类型一样, 值一样,结果才为 true)

这是JS一个缺陷吧,坚持不用 == 比较哦

须知:

  • NaN===NaN ,这个与所以的数值都不相等,包括自己
  • 只能通过 isNaN(NaN) 来判断这个数是否是NaN

浮点数问题:
在这里插入图片描述

在这里插入图片描述

尽量避免使用浮点数进行运算,有精度问题!

在这里插入图片描述
null 和 undefined

  • null 空

  • undefined 未定义

数组

java 数组必须相同类型对象 ,JS 不必须

在这里插入图片描述

取数组下标 :如果越界了,就会 undefined

对象

对象是大括号,数组是中括号

每个属性之间逗号隔开,最后一个不需要.

2.2严格检查格式

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>

  /*前提: IDEA 需要设置支持ES6 语法
    'use strict'; 严格检查模式,预防JavaScript 的随意性导致产生的一些问题
    必须写在JavaScript的第一行~!
    局部变量建议都使用 let 去定义~
    */
<script>
    'use strict';
    // 全局变量
    let i =1
    // ES6  let
</script>


</head>
<body>

</body>
</html>

3、数据类型

3.1、字符串

1、正常字符串用 单引号,或者双引号包裹

2、注意转义字符 \

在这里插入图片描述

3、多行字符串编写

tab 上边,esc下边的符号
`  `

4、模板字符串

let msg =`你好呀,${name}`

5、字符串长度

str.length

6、字符串的可变性:不可变

在这里插入图片描述

7、大小写转换

//注意,这是方法,不是属性了
student.toUpperCase
student.toLowerCase

8、student.indexOf(‘t’)

9、substring

[)
 student.substring(1)// 从第一个字符串截取到最后一个字符串
  student.substring(13)// [1,3)

3.2、数组

Array 可以保护任意的数据类型

var arr =[1,2,3,4,5,6,"1","2"];  //通过下标取值和赋值
arr[0]=1

1、长度

arr.length

注意: 加入给 arr.length赋值,数组大小就会发生变化~,如果赋值过小元素就会丢失

2、indexOf,通过元素获得下标索引

arr.indexOf(2)
1

字符串的 “1”, 和数字 1 是不同的

3、slice () 截取Array 的一部分 ,返回一个新数组,类似String 中的 substring

在这里插入图片描述

4、 push , pop() 尾部

push :   压入到尾部
pop  :   弹出尾部一个元素

5、unshift() ,shift () 头部

在这里插入图片描述

6、排序sort()

在这里插入图片描述

7、元素反转 reverse ()

在这里插入图片描述

8、concat()

在这里插入图片描述

9、连接符 join

在这里插入图片描述

数组: 存储数据 (如何存和取,方法都可以自己实现!)

3.3、对象

若干个键值对

JS 中对象{……}表示一个对象, 键值对描述属性 xxxx:xxxx , 多个属性用逗号隔开,

最后一个属性不加逗号!

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

3.4、流程控制

在这里插入图片描述

在这里插入图片描述

3.5、Map 和 Set

在这里插入图片描述

3.6、iteraotr

遍历数组

  //通过for of  / for in 下标 
'use strict'
     var arr =[3,4,5];
for (let x of arr){
    console.log(x)
}
    //  遍历map
    var map =new Map([["tom",100],["jerry",92],["haha",67]]);
    for (let x of map){
        console.log(x)
    }
    //  遍历set
    var set =new Set([5,6,7]);
    for (let x of set){
        console.log(x)
    }

4、函数

4.1、定义函数

定义方式一

绝对值函数

function abs(x){
    if (x>=0){
        return x;
    }else{
        return  -x;
    }
}

一旦执行到 return 代表函数结束,返回结果!

如果没有执行 return ,函数执行完也会返回结果 ,结果就是 undefined

定义方式二

 var abs=function (x){
    if (x>=0){
        return x;
    }else{
        return  -x;
    }
}

调用函数

abs (-2)    // 10   方法名(参数)
abs (2)     //  10

javaScript 可以传参数,也可以不传参数~

在这里插入图片描述

在这里插入图片描述在这里插入图片描述

4.2、 变量的作用域

在 JavaScript 中 ,var 定义变量实际是有作用域的。

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
4.3、方法

定义 方法

方法就是把函数放在对象的里面 , 对象只有两个东西: 属性和方法

在这里插入图片描述

在这里插入图片描述

apply

在这里插入图片描述

5、内部对象

标准对象

typeof '123'
"string"
typeof 213
"number"
typeof true
"boolean"
typeof NaN
"number"
typeof []
"object"
typeof {}
"object"
typeof Math.abs
"function"
typeof undefined
"undefined"

5.1、Date

基本使用

  var now =new Date();//Fri Apr 16 2021 21:59:07 GMT+0800 (中国标准时间)
    now.getFullYear();//年
    now.getMonth();//月
    now.getDate();//日
    now.getDay();// 星期几
    now.getHours();// 时
    now.getMinutes();//分
    now.getSeconds();//秒

    now.getTime();//时间戳   全世界统一  1970  1.1    0:00:00
    console.log(new Date(1618582151439))//时间戳转化为时间

转换

  now.getFullYear();
2021
now.getMonth();
3
 now.getDate();
16
now.getDay();
5
now.getHours();
22
now.getMinutes();
9
now.getSeconds();
11
now.getTime();
1618582151439
console.log(new Date(1618582151439))
VM768:1 Fri Apr 16 2021 22:09:11 GMT+0800 (中国标准时间)

在这里插入图片描述

5.2、JSON

json 是什么

在这里插入图片描述

在这里插入图片描述

5.3、Ajax

在这里插入图片描述

6、面向对象编程

原型对象

  • 类:模板,原型对象
  • 对象:具体的实例

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

class继承

1、定义一个类,属性, 方法

在这里插入图片描述

2、继承

在这里插入图片描述

原型链

__ proto__:

7、操作BOM对象(重点)

JavaScript 和 浏览器关系?

JavaScript 诞生就是为了能够让他在浏览器中运行!
BOM: 浏览器对象模型

  • IE
  • Chrome
  • Safari
  • FireFox

三方

  • QQ浏览器
  • 360浏览器

window

在这里插入图片描述

Navigator

在这里插入图片描述

screen

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

8、操作DOM对象 (重点)

DOM : 文档对象模型

在这里插入图片描述

在这里插入图片描述

这是原生代码, 之后尽量用 jQuery 来做

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

​ insertBefore:newNode插入到targetNode的前面

9、操作表单(验证)

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

表单提交

在这里插入图片描述

10、jQuery

在这里插入图片描述

在这里插入图片描述

事件

操作DOM

在这里插入图片描述

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

い海蓝时见鲸う

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值