对象(es 5): 1、原生对象 2、内置对象 3、宿主对象
1、全局对象
常用的:
- parseInt
- parseFloat
- Number
- isNaN : isNan(x);
let num=100*'abc'; console.log(num); // NaN console.log(num==NaN); //false,不能比较 console.log(isNaN(num)); // true
- eval : 可把字符串以Js的方式执行
let num=100*'abc'; let str="console.log('hi,eval')"; // hi,eval let str="let a=100,console.log('hi,eval')"; // hi,eval100 eval(str);
2、Object对象
Object.prototype.toString() :返回对象的字符串表示
class Student{ constructor(name,age){ this.name=name; this.age=age; } toString(){ return `我是${this.name}` } let s1=new Student('姓名',22); let s2=new Student('中文',22); console.log(s1.toString()==s2.toString()); console.log(s1,s1+'hi'); }
3、Array对象
- push : 添加到尾部
- pap : 删除尾部
- unshift : 添加到最前面
- shift : 删除最前面
-
splice : 可添加,删除
-
concat : 连接两个或更多的数组,返回结果
-
join : 把数组中的所有元素放入一个数组,元素通过指定的分隔符进行分隔。
let ary=['er','ww','ff']; console.log(ary.join()); // 输出 er,ww,ff console.log(ary.join('#')); // 输出er#ww#ff console.log(str.split('#')); // 还原
-
reverse : 颠倒数组中元素的顺序
-
split : 分割字符
// 反序排列 console.log('输入一个数组:'); let inputStr=readline.question(); let ary=inputStr.split(); ary.reverse(); let newStr=ary.join(''); console.log(newStr);
-
sort:排序 返回:正数--要交换位置; 负数、0--不交换位置
let ary=[2,5,3,7,9,4,66,8]; ary.sort(function(a,b){ if(a>b){ return 1; }else if(a<b){ return -1; }else{ return 0; } }); console.log(ary); // [2...66] 升序
或: let ary=[2,5,3,7,9,4,66,8]; ary.sort(function(a,b){ return a-b; // a-b:升序; b-a:降序; }); console.log(ary);
4、String对象
方法:
- charAt :返回在指定位置的字符
- indexOf : 检索字符串,找到从头开始的第一个相符的字符串
- lastIndexOf:从尾部开始第一个
- substring:提取字符串中两个指定的索引号之间的字符
:换行
5、Math对象
- ceil:向上取整
- floor:向下取整
- round:四舍五入
6、Date对象
- Date:返回当日的日期和时间
- getDate:从 Date 对象返回一个月中的某一天 (1 ~ 31)
- getDay:从 Date 对象返回一周中的某一天 (0 ~ 6),星期几
- getMonth:从 Date 对象返回月份 (0 ~ 11)
- getFullYear:从 Date 对象以四位数字返回年份
总结
- es5中:原生对象,例:构造函数的Student;内置对象;宿主对象,只要针对浏览器。
- API文档:例:w3school,菜鸟教程,firefox
- 内置对象,是由ECMA提供的,只需取出来用;所有内置对象均可称为原生对象
- 内置对象分为:1、全局对象 2、Object对象 3、Array对象(数组) 4、String对象(字符串) 5、Math(数学) 6、Date(日期)