1、JS数据类型
1、数据类型
基本数据类型:number、string、boolean、null、undefined
引用数据类型:function、object、Array
2、区别
undefined:表示变量声明但未初始化时的值
null:表示准备用来保存对象,还没有真正保存对象的值。从逻辑角度看,null 值表示一个
空对象指针
2、创建对象有几种方法
1、字面量对象 // 默认这个对象的原型链指向 object
var o1 = {name: '01'};
2、通过 new Object 声明一个对象
var o11 = new Object({name: '011'});
3、使用显式的构造函数创建对象
var M = function(){this.name='o2'};
var o2 = new M();
o2.__proto__=== M.prototype
o2 的构造函数是 M
o2 这个普通函数,是 M 这个构造函数的实例
4、object.create()
var P = {name:'o3'};
var o3 = Object.create(P);
3、简述创建函数的几种方式?
第一种(函数声明):
function sum1(num1,num2){
return num1+num2;
}
第二种(函数表达式)
var sum2 = function(num1,num2){
return num1+num2;
}
第三种(函数对象方式)
var sum3 = new Function("num1","num2","return num1+num2")
4、JavaScript 内置的常用对象有哪些?并列举该对象常用的方法?
1、对象及方法
- Arguments 函数参数集合
- Arguments[ ] 函数参数的数组
- Arguments 一个函数的参数和其他属性
- Arguments.callee 当前正在运行的函数
- Arguments.length 传递给函数的参数的个数
2、Array 数组
length 属性 动态获取数组长度
- join() 将一个数组转成字符串。返回一个字符串
- reverse() 将数组中各元素颠倒顺序
- delete 运算符 只能删除数组元素的值,而所占空间还在,总长度没变(arr.length)
- shift() 删除数组中第一个元素,返回删除的那个值,并将长度减 1
- pop() 删除数组中最后一个元素,返回删除的那个值,并将长度减 1
- unshift() 往数组前面添加一个或多个数组元素,长度要改变。arrObj.unshift(“a” ,“b,“c”)
- push() 往数组结尾添加一个或多个数组元素,长度要改变。arrObj.push(“a” ,“b”, “c”)
- concat( ) 连接数组
- slice( ) 返回数组的一部分
- sort( ) 对数组元素进行排序
- splice( ) 插入、删除或替换数组的元素
- toLocaleString( ) 把数组转换成局部字符串
- toString( ) 将数组转换成一个字符串
- forEach 遍历所有元素
- var arr = [1, 2, 3];
- arr.forEach(function(item, index) { // 遍历数组的所有元素 console.log(index, item); })
- map 对元素重新组装,生成新数组
- var arr = [1, 5, 2, 7, 3, 4];
- var arr2 = arr.map(function(item, index) {return '<b>' + item + '</br>'; }) console.log(arr2);
- filter 过滤符合条件的元素
- var arr = [1, 2, 3, 4];
- var arr2 = arr.filter(function(item, index) { if (item>2) { return true; } }) console.log(arr2); // [3, 4]
- every 判断所有元素是否都符合条件
3、Boolean 布尔对象
- Boolean.toString( ) 将布尔值转换成字符串
- Boolean.valueOf( ) Boolean 对象的布尔值