이번에는 JS 시간 객체 및 참조 유형을 소개합니다. JS 시간 객체 및 참조 유형을 사용할 때 주의 사항은 무엇입니까?
기본 유형은 무엇인가요? 복합 유형에는 어떤 것이 있나요? 특징은 무엇입니까?
기본 유형: 문자열 유형, Null 유형, 숫자 유형, 정의되지 않은 유형, 부울 유형
복합 유형: 객체 유형
기능:
문자열 유형: 문자열은 일반적으로 string으로 알려진 유니코드 문자의 시퀀스입니다.
Null 유형: Null 유형에는 단 하나의 값만 있습니다: null은 null 포인터, 즉 존재하지 않는 것을 나타냅니다.
숫자 유형: JavaScript숫자 정수형과 부동소수점형 숫자의 차이점은 모두 10진수, 8진수, 16진수를 표현할 수 있는 숫자형이라는 점입니다. 이는 변수가 선언만 되고 초기화되지 않음을 의미합니다. 즉, 이 포인터가 있지만 이 포인터는 어떤 공간도 가리키지 않습니다.
Boolean 유형: Boolean에는 두 개의 값이 있습니다: 1.true2.false
Object 클래스유형: 객체(Object)는 자바스크립트의 핵심 개념이자 가장 중요한데이터 유형입니다. JavaScript의 모든 데이터는 객체로 간주될 수 있으므로 우리는 종종 모든 것이 객체라고 말합니다.
var obj1 = {a:1, b:2}; var obj2 = {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。Code현재 시간부터 지정된 날짜까지의 간격을 가져오는 함수 getIntv를 작성하세요.
var str = getIntv("2016-01-08");
console.log(str); // 설날까지 20일 15시간 20분 10초 남았습니다
Code:
var str = getIntv("2017-01-27"); function getIntv(time){ var end = new Date(time); var now = new Date(); var timer = end-now; var day = Math.floor(timer/(1000606024)); var timer1 = timer%(1000606024) var hour = Math.floor(timer1/(10006060)); var timer2 = timer1%(10006060); var min = Math.floor(timer2/(100060)); var timer3 = timer2%(100060); var sec = Math.floor(timer3/1000); return ("距"+time+"还有"+day+"天"+hour+"小时"+min+"分钟"+sec+"秒") } console.log(str); // 距2017-01-27还有 20 天 15 小时 20 分 10 秒다음과 같이 디지털 날짜를 중국 날짜로 변경합니다.
var str = getChsDate('2015-01-08'); console.log(str); // 二零一五年一月八日코드:
방법 1:
var str = getChsDate('2015-01-08'); function getChsDate(time){ time = time.replace(/-/g,''); var arr = [] for(i=0;i<time.length;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(''); return arr; }//这种方法有一定缺陷,比如'2016-02-28',输出'二零一六年零二月二八日',读起来很别扭 console.log(str); // 二零一五年一月八日방법 2:
function getChsDate(date){ var newDate =date.split("-"), year = newDate[0], month = newDate[1], day = newDate[2]; var dict ={"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": "三十一"}; return dict[year[0]]+dict[year[1]]+dict[year[2]]+dict[year[3]] + '年' + dict[Number(month)] +'月' + dict[Number(day)] + '日'; }; getChsDate('2015-01-08');//"二零一五年一月八日"n일 전 날짜를 가져오는 함수 작성:
var lastWeek = getLastNDays(7); // ‘2016-01-08’ var lastMonth = getLastNDays(30); //'2015-12-15'코드:
var lastWeek = getLastNDays(7); // ‘2016-01-08’ var lastMonth = getLastNDays(30); //'2015-12-15' function getLastNDays(dater){ var now = Date.now(); var timer = dater2460601000; var past = new Date(now - timer); var year = past.getFullYear(); var month = past.getMonth()+1;//月份从0开始算; var day = past.getDate(); return year+'-'+month+'-'+day; } console.log(lastWeek); console.log(lastMonth);다음 코드를 완성하세요.
var Runtime = (function(){ //code here ... return { start: function(){ //code here ... }, end: function(){ //code here ... }, get: function(){ //code here ... } }; }()); Runtime.start(); //todo somethint Runtime.end(); console.log( Runtime.get() );코드:
var Runtime = (function(){ var time1; var time2; return { start: function(){ time1=Date.now(); }, end: function(){ time2=Date.now(); }, get: function(){ return (time2-time1); } }; }()); Runtime.start(); for(var i=0;i<100;i++){ console.log(1);//输出100次1 } Runtime.end(); console.log( Runtime.get() );//运行了22ms계단은 1~2층 올라갈 때마다 아래에서 위로 올라가는 길이 총 몇 개인가요? ? 코드(재귀)를 사용하여
function fn(num) { if (num==0||num==1) { return 1; } else { return fn(num-1)+fn(num-2); } } console.log(fn(200));json 개체의 전체 복사본을 작성하세요. json 개체는 여러 수준에 중첩될 수 있으며 값은 문자열, 숫자, 부울 또는 json 개체의 항목이 될 수 있습니다
var json={ "name":"yahoo", "age":"14", "sex":"man", "address": { "streetAddress": "21 2nd Street", "city": "New York", "state": "NY", "postalCode": "10021" } } function JSON(arr){ var newjson= {}; for(key in arr){ if(typeof arr[key]=="object"){ newjson[key]=JSON(arr[key]); } else{ newjson[key]=arr[key]; } } return newjson; } console.log(JSON(json))배열 작성 딥 카피 방법, 배열의 값은 문자열, 숫자, 부울 또는 배열의 모든 항목일 수 있습니다.
var arr=[1,"2",3,[1,2,3,4],true] function JSON(arr){ var newarr=[]; for(key in arr){ if(typeof arr[key] =='Array') { newarr[key]=JSON(arr[key]); } else{ newarr[key]=arr[key]; } } return newarr; } console.log(JSON(arr))딥 카피 방법 작성, 복사된 객체와 내부 중첩 값은 다음과 같습니다. 문자열, 숫자, 부울, 배열 및 json 객체의 모든 항목
var O={ name:"yahoo", age:14, other:[1,2,true,"yahoo",3], man:{ "man1":"woman", "man2":"man2" }, aid:true, address: { streetAddress: "21 2nd Street", city: "New York", state: "NY", postalCode: "10021" } } function JOSN(O){ var newarr={}; for(key in O){ if (typeof O[key] ==='Array'){ newarr[key]=JOSN(O[key]); } else{ newarr[key]=O[key]; } } return newarr; } console.log(JOSN(O))이 기사의 사례를 읽은 후 방법을 마스터했다고 생각합니다. 더 흥미로운 정보를 보려면 PHP 중국어의 다른 관련 기사에 주목하세요. 웹사이트! 관련 읽기:
위 내용은 JS의 시간 객체 및 참조 유형의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!