JS的基础数据类型及方法
JavaScript基础
一个完整的JavaScript由下列三部分组成:核心(ECMAScript)、文档对象模型(DOM)、浏览器对象模型(BOM)
标签属性
- async:可选,表示立即下载脚本,但并不妨碍页面其他操作,只对外部脚本有效
- charset:可选,表示通过src属性指定的代码的字符集,由于大多数浏览器回忽略它的值,因此很少有人用
- defer:可选,表示脚本可以延迟到文档完全被解析和显示出来后再执行
- language:已废弃
- src:可选,表示包含要执行代码的外部文件
- type:可选,text / javascript
问题:src和href的区别是什么?
答案:
src:当浏览器解析到该元素时,会暂停其他资源的下载和处理,直到该元素加载、编译和执行结束
href:会并行下载资源并且不会停止对当前文档的处理
6种基本数据类型:
- undefined
- null
- boolean
- string
- number
- object
使用typeof()判断数据的类型,其中 alert(typeof null);//object,
其中要注意涉及到NaN的操作(例如NaN/10)都会返回NaN;NaN与任何值都不相等,包括NaN本身。
操作符
加操作符可以快速将字符串变为数字,例如+“1” // 1
逻辑与&逻辑或操作属于短路操作,如果第一个操作数能决定结果,则不会对第二个操作数求值
函数
js中的函数不存在重载,函数名属于后定义的函数。这是由于js中,函数的实质是对象,函数名是指针
查询标识符
当某个环境中为了读取或写入而引用一个标识符时,必须通过搜索来确定该标识符实际代表什么。搜索过程从作用链的前端开始,向上逐级查询与给定名字匹配的标识符。如果在局部环境中找到了该标识符,搜索过程即停止;如果在局部环境中没有找到变量名,则继续沿作用域链向上搜索。如果在全局环境中没有找到标识符,则意味着该变量未声明
var color = "blue";
function getColor() {
return color;
}
alert(getColor()); //blue
var color = "blue";
function getColor() {
var color = "red";
return color;
}
alert(getColor()); //red
引用类型
创建Object实例的方法有两种:
//第一种,使用new操作符
var person = new Object();
person.name = 'Tom';
person.age = 29;
//第二种,对象字面量,简写形式
var person = {
name: 'Tom',//用逗号区分
age: 29
};
数组转换字符串的方法
toLocaleStrign()方法返回由数组中每个值的字符串拼接而成的一个以当地字符分隔的字符串
toString()方法返回由数组中每个值的字符串拼接而成的一个以逗号分隔的字符串
valueOf()返回数组
join()以不同的分隔符构建字符串
有关数组操作的方法
栈方法(push pop)、队列方法(unshift shift)、排序方法(sort reverse)、
迭代方法
-
every方法:对数组中每一项运行给定函数,如果该函数对每一项都返回true,则返回true
-
filter方法:对数组中每一项运行给定函数,返回该函数会返回true的项组成的数组
-
forEach方法:对数组中每一项运行给定函数,没有返回值
-
map方法:对数组中每一项运行给定函数,返回每次函数调用结果组成的数组
-
some方法:对数组中每一项运行给定函数,如果该函数对任一项返回true,则返回true
位置方法
-
indexOf方法:从数组开头向后查找,返回项在数组中的位置,找不到返回-1
-
lastIndexOf方法:从数组结尾向前查找,返回项在数组中的位置,找不到返回-1
操作方法
-
concat方法:基于当前数组中的所有项创建一个新数组
-
slice方法:基于当前数组中的一项或多项创建一个数组
-
splice方法:主要用途是向数组中部插入项,返回值:返回一个包含从原始数组中删除项的数组
Date类型
-
Date.parse:接受字符串并返回毫秒数
-
Date.UTC:返回毫秒数,参数分别是年份、基于0的年份(一月是0、二月是1)、月中的哪一天(1-31)、小时数(0-23)、分钟、秒、毫秒数。如果没设天数,默认为1;省略其他参数,则通通为0
日期格式化方法
- toDateString
- toTimeString
- toLocaleDateString
- toLocaleTimeString
- toUTCString

浙公网安备 33010602011771号