JS开始JS基础****
JS分三部分:
- ECMAScript 标准----JS的基础语法
- DOM----Document Object Model 文档对象模型
- Bom-------Browser Object Model 浏览对象模型
JavaScript介绍
JavaScript是一种运行在客户端的脚步语言
布兰登.艾奇创始人
1.JavaScript是一门脚本 一门解释型 一门动态类型 一门基于对象的语言
脚本语言:不需要编译,直接执行
JS最初的作用
解决用户和浏览器之间的交互问题
JavaScript现在的意义
1.网页特效
2.服务端开发(node.js)
3.命令行工具(Node.js)
4.桌面程序(Electron)
5.APP(Cordova)
6.控制硬件-物联网(Ruff)
7.游戏开发(cocos2d-js)
JS与html css作用
可以用来控制页面内容 给页面增加动态效果
alt+f2 回车或者上下键选择
JS代码写的地方:
1.在HTML的文件中,script的标签中写JS代码
2.JS代码可以在HTML的标签中写
3.在JS文件中可以写代码,但需要在HTML的页面中引入script的标签中的src=“JS的路径”
- script标签在页面中可以出现多对
- script标签一般是放在body标签的最后的,有时候会放在head标签中
内存
JS中存储数据使用变量的方式
JS中申明变量用var
变量的声明级赋值 var num;
变量的初始化var number=0; 有赋值
变量作用----存储,读取数据或者操作数据
JS中大小写是区分的
字符串可以使用单引号 也可双引号
变量名命名规则: 一般以字母 &符合,下划线开头,不能使用关键字,变量名一般都是小写;变量名如果是多个单词,第一个单词首字母小写 后面所有的单词的首字母都是大写的,驼峰命名法
alert();弹框
//浏览器的控制台在浏览器中的开发人员工具中(快捷键;F12)的console的选项中
console.log(num)把内容输出在浏览器的控制台
*☞☞☞☞格式化代码快捷键Ctrl键+alt+l
变量交换的第一种方式
- 使用第三方的变量进行交换
- 第三种使用数据相加减方式
单行注释:一般用在一行代码的上面
多行注释:一般是用在函数或者是一段代码的上面
JS数据类型:number(整数和小数)
,string字符串类型
,Boolean(true(1真 也可以表示性别男),false(0假) 也可以表示性别女)
,null,
undefined 未定义 值只有一个undefined
结果是undefined的情况:
1 变量声明了,没有赋值,结果是undefined
2函数没有明确返回值,如果接收了,结果也是undefined
,Object 对象
获取变量数据类型
在js中所有数字类型都属于number类型
十六进制开头0x
八进制开头为0
数字类型范围:最大值最小值
console.log(number.max_value)
console.log(number.min_value)
无穷大infinity
无穷小-infinity
不要用小数验证小数
不要用NaN验证NaN 因为得到的结果是假的
如果要验证结果是不是NaN,应该使用isNaN() 当括号里面不是数字为true,是数字结果为false
字符串的长度获取:变量名.length
js中转义字符
字符串拼接
转换成数字类型
转换成字符串类型
转换成布尔类型
字面量:是把一个值直接赋值给一个变量 例如 var num=10; 范例 var num=1; y=num;
++和–的位置关系
当num++ +10时 先参与运算 然后自身加1
当++num +10时 先自身加1 然后在参与运算
–也是这样的
三元表达式:?;
if-else-if语句一般永在范围里
switch-case语句一般用在给值里面
用while循环语句判断用户名密码是否输入正确
表格来输出乘法口诀表
创建数组有两种方式
存储一组有序数据
1、通过构造函数创建数组
var arr= new Arry();
2、通过字面量的方式
var arr=【】;
当数组里面有一个数字时,即为数组的长度 ;多个数字时,则为数组的内容;
实现反转数组
ctr+鼠标左键可以查看webstrom源代码
函数的作用:代码的重用
判断一个数是不是质数(除自身外和1,不能被任何数整除)
arguments可以作为一个伪数组操作数据,这时函数的参数的个数不受限制
arguments可以获取函数调用的时候,传入实参的个数
arguments.length 传入实参的的长度
arguments【】传入实参的的索引
命名函数:有名字函数
匿名函数:没有名字的函数
函数表达分为三种:函数声明 函数的表达式 函数自调用
函数也是一种数据类型,数据类型是function
console.log(typeof 函数名)
函数可以作为参数使用,如果一个函数的参数调用了另一个函数,那么就说这个函数为回调函数
函数可以作为返回值使用
隐试全局变量 不使用var声明的变量
作用域链
预解析
如果有多对script中有相同·名的函数,预解析的时候是分段的,互不影响
函数表达式-----预解析陷阱
函数表达式不支持预解析
此时的表达式为 var f1;
f1();此时f1不是函数;
JS是基于对象的一门编程语言 ,不是面对对象语言
创建对象的方法
1、调用系统的构造函数创建对象
关键字instanof
2、自定义构造函数
3、字面量方式创建函数
缺陷:一次性的函数
访问属性的另一种方法
对象:一组无序属性的集合,属性的值可以是任意类型的
JSON格式数据
简单类型和复杂类型
值类型之间传递的是值
引用类型之间传递的是地址
声明的变量都在栈中存储
值类型传递
一个值传递和引用类型传递的例子
内置对象
Math的用法
随机数
面向对象的特性:封装 继承 多态(抽象性)
对象分为三种:内置对象,自定义对象,浏览器对象
用对象实现实例
查看底层源代码;按住Ctr键在按鼠标右键
String对象
字符串可以看成一个字符数组,可以进行遍历
js中字符串的值不可以改变的,改变的指向
实例方法与静态方法的区别
静态方法如:Math.PI();
字符串常用属性String
String对象的部分用法
数组中sort方法排序不稳定所以用下面方法解决
基本包装类型:
number string boolean
例子:num 、num2是基本类型 其中num2只是类型转换了
num3是基本包装类型 new了一个对象
定义一个方法实现虚拟sort方法
方法参数arr地址是定义arr复制给它的
把毫秒数变成正常日期
js中判断字符串的首个位置出现的字符串是否是括号中的数据方法