1,JS中有哪些数据类型?
int(数值),string(字符串),boolean(布尔),null(空),undefined(未定义),object(对象)
2,type of和instance of的区别?
type of,可以判断变量的数据类型,返回值是字符串;
a instance of b,是判断b是不是在a的原型链上,也可以实现判断数据类型,返回值是布尔。
3,怎么判断两个对象相等?
先判断两者是不是对象,再判断两个对象的所有key值是否相同,最后判断两个对象的相应的key对应的值是否相同。
4,JS函数有哪些定义方式?函数有哪些调用形式?
函数声明:function fn() {}
函数表达式:var fn = function() {}
构造函数:var fn = new function('参数1','参数2','函数体')
函数的调用方式有普通函数,对象的方法,事件处理函数,构造函数,回调函数
5,"=="和"==="的区别?
==只会对值进行比较,===不仅会对值进行比较,还会对数据类型进行比较。
6,js中常用的内置对象有哪些?并列举该对象的常用方法?
Math(数学相关),Date(日期相关),Array(数组相关),Object(对象相关)
7,列举和数据操作相关的方法
push:将元素添加到数组的末尾,返回值是数组长度
pop:将数组最后一个元素弹出,返回值是被弹出的元素
unshift:在数组中的开头插入一个元素,返回值是数组的长度
shift:将数组中第一个元素弹出,返回值是被弹出的元素
splice(index,len):删除数组中指定的元素,其中index指数组索引号的位置,len指删除几个元素
concat:连接数组
reverse:翻转数组
8,列举和字符串相关的方法
substr(index,len)和sbustring(start,end):截取字符串
slice:从数组字符串中截取一段
indexOf和lastIndexof:查找某一个字符是否存在于另外一个字符串中,存在则返回索引,不存在则返回-1;indexOf是从前向后顺序查找;
lastIndexOf:是从后向前查找;
replace:替换字符串特定的字符;
toUpperCase:将字符串转换成大写
toLowerCase:将字符串转换成小写
charAt:获取字符串中指定索引的字符
9,document.write和innerHTML的区别?
document.write是指定在整个页面区域的内容,innerHTML是指定某一个元素的内容
10,分别阐述split(),slice(),splice(),join()?
split可以使用一个字符串切割另外一个字符串,返回值是数组;
slice可以从数组中截取一部分;
splice(index,len)可以删除指定的数组元素;
join可以将数组元素使用特定的连接符拼接成字符串
11,列举强制转换和隐式转换的常见方法?
强制转换:
转换成字符串toString() String() 转换成数字 Number() parseInt() parseFloat()
隐式转换:
转换成布尔类型 Boolean() 隐式拼接字符串 "" + - % ===