分享更有价值
被信任是一种快乐

JS的时间对象与引用类型是什么

文章页正文上

这篇文章主要讲解了“JS的时间对象与引用类型是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“JS的时间对象与引用类型是什么”吧!
  基础类型:String类型、Null类型、Number类型、Undefined类型、Boolean类型
  复杂类型:Object类型
  作用:
  String类型:String是Unicode字符组成的序列,俗称字符串,可以用双引号或者单引号表示,没有区别,匹配即可
  Null类型:Null类型只有一个值:null,表示空指针,也就是不存在的东西
  Number类型:JavaScript的数字类型和其它语言有所不同,没有整型和浮点数的区别,统一都是Number类型,可以表示十进制、八进制、十六进制
  Undefined类型:Undefined类型也只有一个值undefined,表示变量只被声明,没有被初始化,也就是有这个指针,但是这个指针没有指向任何空间
  Boolean类型:Boolean有两个值:1.true2.false
  Object类型:对象(object)是JavaScript的核心概念,也是最重要的数据类型。JavaScript的所有数据都可以被视为对象,这也是我们常说的一切皆为对象。
  如下代码的输出?为什么?
  varobj1={a:1,b:2};
  varobj2={a:1,b:2};
  console.log(obj1==obj2);//false,由于obj1与obj2所储存的位置不同,所以false。
  console.log(obj1=obj2);//obj2赋值给obj1输出Object{a=1,b=2}内容。
  console.log(obj1==obj2);//把obj2赋值给obj1,所以obj2与obj1存储的位置是一样的,所以为true。
  代码
  写一个函数getIntv,获取从当前时间到指定日期的间隔时间。
  varstr=getIntv(“2016-01-08”);
  console.log(str);//距除夕还有20天15小时20分10秒
  代码:
  varstr=getIntv(“2017-01-27”);
  functiongetIntv(time){
  varend=newDate(time);
  varnow=newDate();
  vartimer=end-now;
  varday=Math.floor(timer/(1000606024));
  vartimer1=timer%(1000606024)
  varhour=Math.floor(timer1/(10006060));
  vartimer2=timer1%(10006060);
  varmin=Math.floor(timer2/(100060));
  vartimer3=timer2%(100060);
  varsec=Math.floor(timer3/1000);
  return免费云主机、域名(“距”+time+”还有”+day+”天”+hour+”小时”+min+”分钟”+sec+”秒”)
  }
  console.log(str);//距2017-01-27还有20天15小时20分10秒
  把数字日期改成中文日期,如:
  varstr=getChsDate(‘2015-01-08’);
  console.log(str);//二零一五年一月八日
  代码:
  方法一:
  varstr=getChsDate(‘2015-01-08’);
  functiongetChsDate(time){
  time=time.replace(/-/g,”);
  vararr=[]
  for(i=0;i

  switch(time[i]){

  case’0′:arr.push(‘零’);break;

  case’1′:arr.push(‘一’);break;

  case’2′:arr.push(‘二’);break;

  case’3′:arr.push(‘三’);break;

  case’4′:arr.push(‘四’);break;

  case’5′:arr.push(‘五’);break;

  case’6′:arr.push(‘六’);break;

  case’7′:arr.push(‘七’);break;

  case’8′:arr.push(‘八’);break;

  case’9′:arr.push(‘九’);break;

  }

  }

  console.log(time);

  arr.splice(4,0,’年’);

  arr.splice(7,0,’月’);

  arr.splice(10,0,’日’);

  arr=arr.join(”);

  returnarr;

  }//这种方法有一定缺陷,比如’2016-02-28’,输出’二零一六年零二月二八日’,读起来很别扭

  console.log(str);//二零一五年一月八日

  方法二:

  functiongetChsDate(date){

  varnewDate=date.split(“-“),

  year=newDate[0],

  month=newDate[1],

  day=newDate[2];

  vardict={“0″:”零”,”1″:”一”,”2″:”二”,”3″:”三”,”4″:”四”,”5″:”五”,”6″:”六”,”7″:”七”,”8″:”八”,”9″:”九”,”10″:”十”,”11″:”十一”,”12″:”十二”,”13″:”十三”,”14″:”十四”,”15″:”十五”,”16″:”十六”,”17″:”十七”,”18″:”十八”,”19″:”十九”,”20″:”二十”,”21″:”二十一”,”22″:”二十二”,”23″:”二十三”,”24″:”二十四”,”25″:”二十五”,”26″:”二十六”,”27″:”二十七”,”28″:”二十八”,”29″:”二十九”,”30″:”三十”,”31″:”三十一”};

  returndict[year[0]]+dict[year[1]]+dict[year[2]]+dict[year[3]]+’年’+dict[Number(month)]+’月’+dict[Number(day)]+’日’;

  };

  getChsDate(‘2015-01-08’);//”二零一五年一月八日”

  写一个函数获取n天前的日期:

  varlastWeek=getLastNDays(7);//‘2016-01-08’

  varlastMonth=getLastNDays(30);//’2015-12-15′

  代码:

  varlastWeek=getLastNDays(7);//‘2016-01-08’

  varlastMonth=getLastNDays(30);//’2015-12-15′

  functiongetLastNDays(dater){

  varnow=Date.now();

  vartimer=dater2460601000;

  varpast=newDate(now-timer);

  varyear=past.getFullYear();

  varmonth=past.getMonth()+1;//月份从0开始算;

  varday=past.getDate();

  returnyear+’-‘+month+’-‘+day;

  }

  console.log(lastWeek);

  console.log(lastMonth);

  完善如下代码,如:

  varRuntime=(function(){

  //codehere…

  return{

  start:function(){

  //codehere…

  },

  end:function(){

  //codehere…

  },

  get:function(){

  //codehere…

  }

  };

  }());

  Runtime.start();

  //todosomethint

  Runtime.end();

  console.log(Runtime.get());

  代码:

  varRuntime=(function(){

  vartime1;

  vartime2;

  return{

  start:function(){

  time1=Date.now();

  },

  end:function(){

  time2=Date.now();

  },

  get:function(){

  return(time2-time1);

  }

  };

  }());

  Runtime.start();

  for(vari=0;i

  console.log(1);//输出100次1

  }

  Runtime.end();

  console.log(Runtime.get());//运行了22ms

  楼梯有200级,每次走1级或是2级,从底走到顶一共有多少种走法?用代码(递归)实现

  functionfn(num){

  if(num==0||num==1){

  return1;

  }

  else{

  returnfn(num-1)+fn(num-2);

  }

  }

  console.log(fn(200));

  写一个json对象深拷贝的方法,json对象可以多层嵌套,值可以是字符串、数字、布尔、json对象中的任意项

  varjson={

  ”name”:”yahoo”,

  ”age”:”14″,

  ”sex”:”man”,

  ”address”:

  {

  ”streetAddress”:”212ndStreet”,

  ”city”:”NewYork”,

  ”state”:”NY”,

  ”postalCode”:”10021″

  }

  }

  functionJSON(arr){

  varnewjson={};

  for(keyinarr){

  if(typeofarr[key]==”object”){

  newjson[key]=JSON(arr[key]);

  }

  else{

  newjson[key]=arr[key];

  }

  }

  returnnewjson;

  }

  console.log(JSON(json))

  写一个数组深拷贝的方法,数组里的值可以是字符串、数字、布尔、数组中的任意项目

  vararr=[1,”2″,3,[1,2,3,4],true]

  functionJSON(arr){

  varnewarr=[];

  for(keyinarr){

  if(typeofarr[key]==’Array’){

  newarr[key]=JSON(arr[key]);

  }

  else{

  newarr[key]=arr[key];

  }

  }

  returnnewarr;

  }

  console.log(JSON(arr))

  写一个深拷贝的方法,拷贝对象以及内部嵌套的值可以是字符串、数字、布尔、数组、json对象中的任意项

  varO={

  name:”yahoo”,

  age:14,

  other:[1,2,true,”yahoo”,3],

  man:{

  ”man1″:”woman”,

  ”man2″:”man2″

  },

  aid:true,

  address:

  {

  streetAddress:”212ndStreet”,

  city:”NewYork”,

  state:”NY”,

  postalCode:”10021″

  }

  }

  functionJOSN(O){

  varnewarr={};

  for(keyinO){

  if(typeofO[key]===’Array’){

  newarr[key]=JOSN(O[key]);

  }

  else{

  newarr[key]=O[key];

  }

  }

  returnnewarr;

  }

  console.log(JOSN(O))

感谢各位的阅读,以上就是“JS的时间对象与引用类型是什么”的内容了,经过本文的学习后,相信大家对JS的时间对象与引用类型是什么这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是云技术,小编将为大家推送更多相关知识点的文章,欢迎关注!


  switch(time[i]){
  case’0′:arr.push(‘零’);break;
  case’1′:arr.push(‘一’);break;
  case’2′:arr.push(‘二’);break;
  case’3′:arr.push(‘三’);break;
  case’4′:arr.push(‘四’);break;
  case’5′:arr.push(‘五’);break;
  case’6′:arr.push(‘六’);break;
  case’7′:arr.push(‘七’);break;
  case’8′:arr.push(‘八’);break;
  case’9′:arr.push(‘九’);break;
  }
  }
  console.log(time);
  arr.splice(4,0,’年’);
  arr.splice(7,0,’月’);
  arr.splice(10,0,’日’);
  arr=arr.join(”);
  returnarr;
  }//这种方法有一定缺陷,比如’2016-02-28’,输出’二零一六年零二月二八日’,读起来很别扭
  console.log(str);//二零一五年一月八日
  方法二:
  functiongetChsDate(date){
  varnewDate=date.split(“-“),
  year=newDate[0],
  month=newDate[1],
  day=newDate[2];
  vardict={“0″:”零”,”1″:”一”,”2″:”二”,”3″:”三”,”4″:”四”,”5″:”五”,”6″:”六”,”7″:”七”,”8″:”八”,”9″:”九”,”10″:”十”,”11″:”十一”,”12″:”十二”,”13″:”十三”,”14″:”十四”,”15″:”十五”,”16″:”十六”,”17″:”十七”,”18″:”十八”,”19″:”十九”,”20″:”二十”,”21″:”二十一”,”22″:”二十二”,”23″:”二十三”,”24″:”二十四”,”25″:”二十五”,”26″:”二十六”,”27″:”二十七”,”28″:”二十八”,”29″:”二十九”,”30″:”三十”,”31″:”三十一”};
  returndict[year[0]]+dict[year[1]]+dict[year[2]]+dict[year[3]]+’年’+dict[Number(month)]+’月’+dict[Number(day)]+’日’;
  };
  getChsDate(‘2015-01-08′);//”二零一五年一月八日”
  写一个函数获取n天前的日期:
  varlastWeek=getLastNDays(7);//‘2016-01-08’
  varlastMonth=getLastNDays(30);//’2015-12-15′
  代码:
  varlastWeek=getLastNDays(7);//‘2016-01-08’
  varlastMonth=getLastNDays(30);//’2015-12-15′
  functiongetLastNDays(dater){
  varnow=Date.now();
  vartimer=dater2460601000;
  varpast=newDate(now-timer);
  varyear=past.getFullYear();
  varmonth=past.getMonth()+1;//月份从0开始算;
  varday=past.getDate();
  returnyear+’-‘+month+’-‘+day;
  }
  console.log(lastWeek);
  console.log(lastMonth);
  完善如下代码,如:
  varRuntime=(function(){
  //codehere…
  return{
  start:function(){
  //codehere…
  },
  end:function(){
  //codehere…
  },
  get:function(){
  //codehere…
  }
  };
  }());
  Runtime.start();
  //todosomethint
  Runtime.end();
  console.log(Runtime.get());
  代码:
  varRuntime=(function(){
  vartime1;
  vartime2;
  return{
  start:function(){
  time1=Date.now();
  },
  end:function(){
  time2=Date.now();
  },
  get:function(){
  return(time2-time1);
  }
  };
  }());
  Runtime.start();
  for(vari=0;i

  console.log(1);//输出100次1
  }
  Runtime.end();
  console.log(Runtime.get());//运行了22ms
  楼梯有200级,每次走1级或是2级,从底走到顶一共有多少种走法?用代码(递归)实现
  functionfn(num){
  if(num==0||num==1){
  return1;
  }
  else{
  returnfn(num-1)+fn(num-2);
  }
  }
  console.log(fn(200));
  写一个json对象深拷贝的方法,json对象可以多层嵌套,值可以是字符串、数字、布尔、json对象中的任意项
  varjson={
  ”name”:”yahoo”,
  ”age”:”14″,
  ”sex”:”man”,
  ”address”:
  {
  ”streetAddress”:”212ndStreet”,
  ”city”:”NewYork”,
  ”state”:”NY”,
  ”postalCode”:”10021″
  }
  }
  functionJSON(arr){
  varnewjson={};
  for(keyinarr){
  if(typeofarr[key]==”object”){
  newjson[key]=JSON(arr[key]);
  }
  else{
  newjson[key]=arr[key];
  }
  }
  returnnewjson;
  }
  console.log(JSON(json))
  写一个数组深拷贝的方法,数组里的值可以是字符串、数字、布尔、数组中的任意项目
  vararr=[1,”2″,3,[1,2,3,4],true]
  functionJSON(arr){
  varnewarr=[];
  for(keyinarr){
  if(typeofarr[key]==’Array’){
  newarr[key]=JSON(arr[key]);
  }
  else{
  newarr[key]=arr[key];
  }
  }
  returnnewarr;
  }
  console.log(JSON(arr))
  写一个深拷贝的方法,拷贝对象以及内部嵌套的值可以是字符串、数字、布尔、数组、json对象中的任意项
  varO={
  name:”yahoo”,
  age:14,
  other:[1,2,true,”yahoo”,3],
  man:{
  ”man1″:”woman”,
  ”man2″:”man2″
  },
  aid:true,
  address:
  {
  streetAddress:”212ndStreet”,
  city:”NewYork”,
  state:”NY”,
  postalCode:”10021″
  }
  }
  functionJOSN(O){
  varnewarr={};
  for(keyinO){
  if(typeofO[key]===’Array’){
  newarr[key]=JOSN(O[key]);
  }
  else{
  newarr[key]=O[key];
  }
  }
  returnnewarr;
  }
  console.log(JOSN(O))
感谢各位的阅读,以上就是“JS的时间对象与引用类型是什么”的内容了,经过本文的学习后,相信大家对JS的时间对象与引用类型是什么这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是云技术,小编将为大家推送更多相关知识点的文章,欢迎关注!

相关推荐: jquery plugins的含义是什么

本篇内容介绍了“jquery plugins的含义是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! jquery plugins的意思为“jquery插件”…

文章页内容下
赞(0) 打赏
版权声明:本站采用知识共享、学习交流,不允许用于商业用途;文章由发布者自行承担一切责任,与本站无关。
文章页正文下
文章页评论上

云服务器、web空间可免费试用

宝塔面板主机、支持php,mysql等,SSL部署;安全高速企业专供99.999%稳定,另有高防主机、不限制内容等类型,具体可咨询QQ:360163164,Tel同微信:18905205712

主机选购导航云服务器试用

登录

找回密码

注册