一、javasript和java是什么关系?从语言的角度来分析其两者
二、js如何编写
- 编写一个js文件,使用<script>将其引入在html页面中(项目较为常用)
- 直接在浏览器的<script>标签下写js代码(项目较为常用)
- 直接在html的代码中写js代码
三、变量类型
- undefined类型:声明一个变量,并未对变量进行赋值,则该变量的类型就是undefined
- string类型:被双引号或单引号所包裹的数据,则该数据的数据类型就是string
- null类型:声明一个变量,并给该变量赋值为null时,则该变量就是null类型,null是一种特殊的object类型
- boolean类型:声明一个变量,并赋值为true或false,则改变量的类型就是boolean类型
- number类型:;整型;浮点型;Infinity / -Infinity;NaN (Not a Number)
- object类型:声明一个变量,并通过new关键字生成一个对象赋值给该变量,该变量的类型就是object类型
四、转换规则
- 字符串和任意数据类型进行“+”操作时,得到的一定是字符串
- 当一个数字和其他数据类型进行“+”操作时(除了字符串),其他数据类型会转化为数字进行数学运算
- 当数字和字符串进行"* / -"操作时,字符串会转化成数字进行数学运算
- 如果null在if条件句中,则null会自动转化为布尔值false
- 对于字符串、数字、布尔值三者进行相互比较时,不为数字的哪一方,调用Number()方法,转化为数字再进行比较
- 对于null和undefined来讲,这两者只和自身相等或和对方相等,除此以外和谁进行“==”比较时都为false
- NaN比较特殊,它和自己都不相等
- 当字符串、数字、布尔值和对象进行比较时,对象先调用toString转化为字符串,再比较
- 对象和对象比较,比较的是引用地址
五、手动转换
-
-
- 手动转换就是布尔类型,字符串类型,数字类型之间的相互转换
- Boolean() String() Number(),把想要转换的数据丢入到方法的参数中,就可以转换成想要的结果
-
JS中的对象
-
- 函数对象
- 函数的定义
- function 函数名(形参列表){ 函数体 }
- var 函数名 = function(形参列表){ 函数体 }
- var 函数名 = new Function("形参1","形参2",..,"形参n","函数体")
- 函数的定义
- 函数对象
-
-
- js函数的定义和java中方法的定义区别
- js中的形参无需var关键字
- js中的函数返回类型由返回值决定
- 如果函数无return语句,则该函数就是无返回值函数
- js中实参和形参的数量可以不一致。调用时,实参形参也可以不一致
- “ ()”表示函数的运行符
- 函数的属性
- 函数名.length 获取函数形参个数
- 在函数的内部:通过arguments.length获取函数实参的个数
- 函数的方法:无
- js函数的定义和java中方法的定义区别
-
-
- 数组对象
- 数组的定义
- var arr = new Array() 创建一个空数组
- var arr2 = new Array(10) 创建一个长度为10的数组
- var arr3 = new Array(‘12’,123) 创建一个含有元素的数组
- var arr4 = [‘ele’] 创建一个含有元素的数组
- 数组的特点:
- JS中的数组可以存放不同类型的数据
- JS中的数组长度是可以变换的,可以利用length清空数组
- JS中的数组类似于java中的ArrayList
- 数组的属性
- length,数组的长度
- 数组的方法
- push() 向数组尾部添加一个元素,并返回数组的长度
- unshfit() 向数组头部添加一个元素,并返回数组的长度
- pop() 从数组的尾部取出一个元素,并返回该元素
- shift() 从数组的头部取出一个元素,并返回该元素
- join() 给定一个连接符,将数组中的元素以字符串返回
- concat() 拼接两个(以上)数组,并作为一个新数组返回
- reverse() 反转数组
- 遍历数组
- 通过for循环或增强for循环遍历
- 数组的定义
- 数组对象
-
- 日期对象
- 日期对象的创建方式
- var d1 = new Date(); 获取一个系统当前时间
- var d2 = new Date(1594572357643); 给定一个距离1970年经过的毫秒数,创建一个日期对象
- var d3 = new Date(2000,10,10,10,10,10); 给定年月日[时分秒],创建一个日期对象
- 日期对象的创建方式
- 日期对象
-
-
- 日期对象的方法
- getTime() 获取距离1970年经过的毫秒数
- getFullYear() 获取年份
- getMonth() 获取月份(值为0-11,0表示1月,11表示12月)
- getDate() 获取日份
- getDay() 获取星期几
- getHours() 获取小时
- getMinutes() 获取分钟
- getSeconds() 获取秒
- toLocaleString() 以本地习惯显示时间
- 日期对象的方法
- Math对象
- Math不需要创建对象,Math直接使用
- Math的属性、方法
- abs()获取绝对值
- round() 四舍五入
- ceil() 天花板,向上取整
- floor() 地板,向下取整
- random() 获取一个[0,1)的随机数
- PI,获取圆周率
- String对象
- 字符串的属性、方法
- length 字符串的长度
- concat() 拼接字符串
- 字符串的属性、方法
-
substr(e1,len) 从e1位置开始取,取len个长度
-
-
-
- slice(e1,e2)/substring(e1,e2) 从e1位置开始取,取到e2位置 [e1,e2)
- indexOf(e)/lastIndexOf(e)返回字符串e在字符串中第一次/最后一次出现的位置。如果没有出现,则返回-1
- toUpperCase()/toLowerCase()将字符串转化为大写、小写
- trim() 将字符串左右两边的空格去掉
-
-
-
- Object对象
- Object对象添加属性、修改属性、删除属性
- 通过“对象.属性=值”为对象添加一个属性
- 通过“delete 对象.属性”来删除对象中的一个属性
- Object对象添加属性、修改属性、删除属性
- Object对象
import