目录
js的数据类型分为:数字、字符串、布尔、undefined、null、数组(列表)、函数、关联数组(类比java对象或者Map
) variable (变量) 8
java中不允许除0,但是js这里除下来是正无穷。
-11/0 结果则为-Infinity(负无穷)
not a number,(不是一个数字)
可以用isNaN判断0/1000 是个数字吗?
字符串类型
模板字符串,类似与java中的String.format(....)的用法
字符串可以用双引号和单引号都可以
字符串的长度
var a ="haha';
console.log(a.length)
"hello".length
字符串拼接:用 +
布尔类型:Boolean类型在运算中当作1,0来看待
undefined未定义数据类型
如果一个变量没有被初始化过,结果就是undefined
null空值类型
null和数字相加时被看作为0,与字符串相加时被看作为null。
1.不需要main方法,直接写代码就行
2.运行在浏览器上
3.变量没有类型,数据有类型
4.字符串 单引号、双引号、
比较:
(1).带类型转换的比较
1=='1' true
(2)不带类型转换的
1==='1' false
此时num=10,所以结果为true
需要掌握(4个点)
1.创建数组 var arr=[]
2.获取数组中的元素长度 :arr.length
3.根据下标获取元素/修改某个元素
4.数组的遍历
4.1根据下标遍历
for(var i=0;i
arr[i]=......;
console.log(arr[i]);
}
4.2使用了特殊的for形式(类似java中的foreach写法)
5.头插头删,尾插尾删
尾增用push
可以一次插多个
数组尾插(push方法,将一个或多个元素添加到数组尾部,并返回新的长度)
arr.push("甲")=>1
arr.push("乙",)
尾删
pop:从数组中删除最后一个元素,并返回该元素的值
头插 unshift()将一个或多个元素添加到数组的开头,并返回该数组的新长度
头删 shift() 删除第一个元素,并返回该元素的值
splice() :根据指定下标进行插入或者删除
splice胶合、粘合
1.定义:没有返回值类型,形参也是没有类型的
function 函数名(形参列表)
//函数中要运行的语句
//如果需要返回,可以使用return返回
function add(a,b){
return a+b; //var都不用写
}
2.函数的调用
![]()
1.js中的函数,甚至不要求 调用时的实参列表长度 和 定义时的形参列表长度 完全一致
实参列表是多于/少于形参列表的
2.JS中的函数也是一种数据类型(重要!!!)
js中的函数可以出现在等号的右边,可以赋值给其他变量的(包含隐式赋值)。
下图xxx就拥有了和add一样的效果。
例子如下:
会看到先打印add函数,再打印1,2,3
3.函数表达式(匿名函数)
会把一个整体全部给他,也就是看作对象给他
例子如下:
3.JS中允许在函数中定义函数,或者在实参列表中定义函数,可以嵌套定义
函数本身就是一种数据类型
f1会调用f2,f2会打印这三句话
1.字面量的定义:使用大括号
o.name o['name']
2.访问属性/根据key对应value
key是无序的,所以存储不是按照定义是的顺序来
3.可以随时添加新的key
o['gender']='male' o.sn='20220528'
4.数据类型可以是函数
//添加的key是一个函数类型
o.sayHello=function(){console.log('你好,世界')}
可以随时添加。
console.log 也可写为这种形式
5.关于this(并不完全正确,但初学者够用)
6.类似方法定义和使用这里的this不能省略,java中的this没有歧义可以省略
this就表示这个对象
可以完全当构造方法使用
遍历
关于属性
1.html中的所有属性,全部表现
toggle 切换
{}一般只在定义的时候使用
[] 数组下标
()函数调用
调试工具的使用
开发者工具源代码面板左侧,程序继续允许,直到下一个断点时,停下来
或
![]()
跳出当前函数和单步调试