概念:无序的相关属性和方法的集合

组成:属性、方法

属性:特征

方法:行为

创建对象三种方式:

1、利用对象字面量创建对象{}


var obj={};//创建一个空对象
var obj ={
uname:"qwe",
age:12,
sex:"男",
sayHi:function() {
console.log("hi~");
}
}
2、使用对象
console.log(obj.uname);//第一种
console.log(obj["age"]);//第二种
3、调用方法
obj.sayHi();eg:var obj={};var obj= {//定义属性name:"可可",class:"阿拉斯加犬",age:5,color:"棕红色",//定义方法jiNeng:function() {console.log("汪汪汪~");console.log("演电影");}}console.log(obj.name,obj.class,obj.age,obj.color);obj.jiNeng();

2、利用new object创建对象

var obj=new Object();
obj.uname="name";
obj.age=12;
obj.sayHi= function() {
consoloe.log(.);
}eg:var obj=new Object();obj.uname="鸣人";obj.sex="男";obj.age=19;obj.sayHi=function() {console.log("影分身术");}console.log(obj.uname,obj.sex,obj.age);obj.sayHi();

3、构造函数创建对象(不需要retrurn返回值)

function 构造函数() {//构造函数名首字母大写this.属性=值;
this.方法=function(){}
}
new 构造函数名();//用new关键字调用构造函数eg:
function Yx(name,type,red) {this.name=name;this.type=type;this.red=red;this.gong=function(gong) {console.log(gong);}}var LinaPo=new Yx("廉颇","力量型","500血量");console.log(LinaPo);LinaPo.gong("近战");var HouYi=new Yx("后裔","射手型","100血量");HouYi.gong("原战");console.log(HouYi);

遍历对象(用for in)

for(var 变量 in 对象) {
console.log(k);//输出属性名
console.log(obj[k]);//输出属性值eg:
var obj={name:"老师",age:18,sex:"男"
}
for(var k in obj) {
console.log(k);//name,age.sex
console.log(obj[k]);//老师,18,男

内置对象

定义:js自带的一些对象,提供常用的属性和方法

查阅内置对象参考文档:MDN Web Docs

时间戳:获得总毫秒数(距离1970年1月1日)

   // 1、通过以下两种获取 var date=new Date();console.log(date.valueOf());console.log(date.getTime());//   2、简单写法var date1 =+new Date();console.log(date1);// 3 H5 新增获取console.log(Date.now());

eg:Dete()  日期对象,是一个构造函数,必须使用new来调用创建

1、无参
var date =new Date();
console.log(date);//显示当当前日期2、
2.1数字参数
var date1=new Date(2019,10,1);
console.log(date1);2019/11/1
2.2字符串参数
var date2=new Date("2022-10-1  8:8:8");
console.log(date2);//2022/10/1  8:8:8

格式化日期年月日2022年1月3日 星期一

  var date=new Date();var year=date.getFullYear();//年var month=date.getMonth()+1;//月var dates=date.getDate();//日var arr=["星期天","星期一","星期二","星期三","星期四","星期五","星期六"];var day=date.getDay();//获取星期var hours=date.getHours();//获取小时数var minutes=date.getMinutes();//获取分钟数var second=date.getSeconds();//获取秒数console.log(`今天是:${year}年 ${month}月 ${dates}日 星期${day} ${hours}时 ${minutes}分 ${second}秒`);

获取当前时间

   function getTime() {var time=new Date();var h=time.getHours();h=h < 10 ? '0' +h:h;var m=time.getMinutes();m=m <10 ? '0' + m : m;var s =time.getSeconds();s=s < 10 ? '0' +s :s;return h+':' +m+':'+s;}console.log(getTime());

倒计时核心算法

/ d=parseInt(总秒数/60/60/24);//计算天数// h=parseInt(总秒数/60/60%24);//计算小时// m=parseInt(总秒数/60%60);//计算分数// s=parseInt(总秒数%60);//计算当前秒数

数组对象

检测是否为数组的两种方式

1、instanceof

var arr=[];
var obj={};
console.log(arr instanceof Array);//返回true
console.log(obj instanceof Array);//返回false

2、Array.isArray(参数);   h5新增方法  ie9以上版本支持

var arr=[];
var obj={};
console.log(Array.isArray(arr));//返回true
console.log(Array.isArray(obj));//返回false

添加删除数组元素

1、 push(参数)  在数组后面添元素     用了之后直接输出数组arr.push(元素)返回的是数组长度

2、unshift(参数)在数组的开头,添加元素    用了之后直接输出数组arr.unshift(元素)返回的是数组长度

3、pop()   删除最后一个元素(一次只能删一次)  不需要参数       用了之后直接输出数组arr.pop()返回的是删除的元素的值

4、shift() 删除第一个元素      不需要参数       用了之后直接输出数组arr.pop()返回的是删除的元素

数组排序

reverse()  颠倒数组顺序   改变原数组  返回新数组   (翻转数组)

var arr =[1,2,3];
arr.reverse();
console.log(arr);//3,2,1

sort([compareFunction]) 对数组排序    改变原数组  返回新数组     如果没有函数,元素按照Unicode位点排序

冒泡排序
var arr =[1,3,2];
arr.sort(function(a,b){
return a-b;  //升序
return b-a;//降序
}
);
console.log(arr);//3,2,1

数组索引方法

indexOf (数组元素)  查找数组第一个满足元素索引   如果在数组中找不到元素  返回-1

lastIndexOf(数组元素) 查找数组最后一个满足元素索引   如果在数组中找不到元素  返回-1

数组转换为字符

toString()

var arr=[1,2,3];
console.log(arr.toString());//1,2,3

join(分隔符)

var arr=[1,2,3];
console.log(arr.join());//1,2,3
console.log(arr.join(-));//1-2-3

字符串对象

基本包装类型 :把简单的数据类型包装为复杂数据类型

执行过程:

生成临时变量,把简单类型包装成为复杂数据类型
var temp=new String('adcd');
赋值给我们声明的字符变量
str=temp;
销毁临时变量
temp=null;

字符串不可变:就是重新赋值也是在内存中重新开辟空间,字符串名称指向新的值,旧的依然存在

根据字符返回位置

根据字符串返回位置  str.indexOf("要查找的字符",[起始的位置]);var str='我的钱,钱没了';
console.log(str.indexOf('钱'));//2
console.log(str.indeOf('钱',3));//从索引号3开始往后查找

字符串对象返回字符位置案例

 <script>var str="abcoefoxyozzopp";var index=str.indexOf('o');var num=0;while(index!==-1) {console.log(index);num++;index=str.indexOf('o',index+1);}console.log('o出现的次数是:'+num);</script>

根据位置返回字符

charAt(index)  :返回指定位置的字符(index字符串的索引号)   str.charAt(0)

charCodeAt(index)  :返回指定位置处字符的ASCLL码(index字符串的索引号)str.charCodeAt(0)

目的:判断用户按下的按下的哪个键

str[index] :获取指定位置的字符(index字符串的索引号)   HTML5,IE8+支持和charAt()等效

eg:统计出现最多的字符和次数

核心算法:利用charAt() 遍历这个字符串
把每个字符串都存储给对象,如果对象没有该属性,就为1,如果存在就+1
遍历对象,得到最大值和该字符var str="abcoefoxyozzopp";var o={};
for(var i=0;i<str.length;i++){var chars=str.charAt(i);//char是字符串的每一个字符if(o[chars]) {//o[chars]得到的是属性值o[chars]++;} else {o[chars]=1;}
}
console.log(o);
var max=0;
for(var k in o) {//k得到的是属性名//o[k]得到的四属性值if(o[k]>max) {max=o[k];ch=k;
}
}
console.log(max);
console.log("最多的字符是“+ch);

concat(str1,str2,str3):方法用于连接两个或多个字符串,拼接字符串,等效于+,

var str='andy';
console.log(str.concat('red');//andyred

substr(start,length) :从start位置开始(索引号),length取得个数,重点记这个

var str1="我的苹果";
console.log(str1.substr(1,2));//苹果

slice(start,end) :从start位置开始,截取到end位置,end取不到     索引号

substring(start,end)::从start位置开始,截取到end位置,end 取不到 基本和slice相同  但是不接受负值

替换字符 replace("被替换的字符”,‘替换为的字符’);

var str='andy';
console.log(str.replace('a','b');//bndy把所有o替换成*
var str="abcoefoxyozzopp";
while(str1.indexOf('o') !==-1) {str =str.replace('o','*');
}
console.log(str1);

字符转换为数组 split("分隔符“);

var str2='red,str,blue';
console.log(str.split(',');//[red,str,bule]

对象、内置对象、数组对象、字符串对象的使用相关推荐

  1. php 字符串数组转数组对象_php怎么将数组转成对象?

    php将数组转成对象的方法:1.使用数据类型转换,在数组变量前添加"(Object)"来将数组转成对象.2.先使用json_encode()函数将数组转换为json字符串:然后使用 ...

  2. JS-内置对象内置构造函数事件-拖拽轮播图无缝滚动

    内置对象&内置构造函数 日期时间格式 // 创建一个当前时刻的日期时间对象 var date = new Date(); // 获取date对象中的年月日时分秒 var y = date.ge ...

  3. JavaScript对象与内置对象——内置对象(二)

    内置对象 JavaScript中的对象分为3种:自定义对象.内置对象,浏览器对象 前两种对象是js基础内容,属于ECMAScript;的三个浏览器对象属于我们JS独有的. JavaScript提供多个 ...

  4. Python_序列对象内置方法详解_String

    目录 目录 前言 软件环境 序列类型 序列的操作方法 索引调用 切片运算符 扩展切片运算符 序列元素的反转 连接操作符 重复运算符 成员关系符 序列内置方法 len 获取序列对象的长度 zip 混合两 ...

  5. python——常见内置函数、可迭代对象与迭代器对象

    目录 一.常见内置函数 1.abs() 2.all()与any() 3.bin() oct() hex() 4.int() 5.bytes() 6.callable() 7.chr() ord() 8 ...

  6. junit5_JUnit 5和Selenium –使用Selenium内置的`PageFactory`实现页面对象模式

    junit5 Selenium是一组支持浏览器自动化的工具和库,主要用于Web应用程序测试. Selenium的组件之一是Selenium WebDriver,它提供客户端库,JSON有线协议(与浏览 ...

  7. 07JavaScript数组与字符串对象

    JavaScript数组与字符串对象 5.1.1数组(Array)对象 <script> //声明一个数组并赋值; var arr = new Array("aa",& ...

  8. 以下哪个不是python的内置函数_以下哪个 Python 内置函数可以返回列表对象中元素个数。...

    [多选题]假设 x=[0,1,2,3],执行哪些语句之后,x 的值为[0, 1, 2]. [多选题]以下哪些对象的分隔符为逗号. [单选题]已知列表 x=[0,1,2,1,4],那么执行语句 del ...

  9. 3.js中判断数组中是否存在某个对象/值,判断数组里的对象是否存在某个值 的五种方法 及应用场景|判断数组里有没有某对象,有不添加,没有则添加到数组

    3.js中判断数组中是否存在某个对象/值,判断数组里的对象是否存在某个值 的五种方法 及应用场景 一.当数组中的数据是简单类型时: 应用js中的indexof方法:存在则返回当前项索引,不存在则返回 ...

  10. IOS内置safari浏览器日期字符串转Date对象失败

    代码示例: <html> <head> <title>Date字符串转化示例</title> </head> <body> &l ...

最新文章

  1. Java学习总结:25
  2. 解决:无法创建该DNS 服务器的委派
  3. DTU详解解读 概念到功能应用
  4. 十大编程算法助程序员走上高手之路
  5. Blocks与Dispatch Queue的使用
  6. java3d box 坐标,3d transform的坐标空间及位置
  7. 网络流24题1 飞行员配对方案问题
  8. Scrapy中文乱码
  9. 四、ip classless与默认路由
  10. 使用Chrome Frame,彻底解决浏览器兼容问题
  11. JS实现自动填写问卷【JS小工具】
  12. 非线性声学回声消除技术
  13. html 透明玻璃效果,PS教程:制作透明玻璃效果(一)
  14. 新周刊:放弃北上广的10个理由
  15. 论文的关键词应该如何选取?
  16. MYSQL数据库实验三多表查询_MYSQL数据库语句之多表操作(三)
  17. 2021美赛Latex排版美化 完整代码1
  18. 算法基础复盘笔记Day12【贪心算法】—— 区间问题、Huffman树、排序不等式、绝对值不等式、推公式
  19. 前端状态机:XState 首个中文文档上线了
  20. H.264码率控制算法研究及JM相应代码分析(二)

热门文章

  1. 向日葵控制服务器显示颜色不对,使用向日葵控制软件后电脑窗口的外观就改变了还不透明了。怎么办?...
  2. 网页代码扒ppt_案例分析:教你如何扒掉麦肯锡式PPT的光鲜亮丽皮
  3. 后台管理系统的权限以及vue处理权限的思路
  4. 机械臂动力学建模(3)- Newton Euler牛顿欧拉算法
  5. USB接口定义;miniUSB接口定义
  6. 易语言教程数据库修改记录
  7. Altera Cyclone IV系列命名规则
  8. 北京信息科技大学第十一届程序设计竞赛(重现赛)A kotori和糖果
  9. 解决 android 输入法弹出输入框被遮挡的问题
  10. 划词搜索被ewido视为高风险Adware.wSerarch