js必备知识小结(二)

简介: js必备知识小结(二)

一、date

如何使用、如何获取年月日时分秒、时间戳、如何获取指定日期的时间戳或周几

1..Date 对象用于处理日期和时间。

创建 Date 对象的语法:

var myDate=new Date()

获取年月日时分秒:

// 格式化日对象
const getNowDate = () => {
  let date = new Date();
  let sign2 = ":";
  let year = date.getFullYear() // 年
  let month = date.getMonth() + 1; // 月
  let day = date.getDate(); // 日
  let hour = date.getHours(); // 时
  let minutes = date.getMinutes(); // 分
  let seconds = date.getSeconds() //秒
  let weekArr = ['星期一', '星期二', '星期三', '星期四', '星期五', '星期六', '星期天'];
  let week = weekArr[date.getDay()];
  // 给一位数的数据前面加 “0”
  if (month >= 1 && month <= 9) {
    month = "0" + month;
  }
  if (day >= 0 && day <= 9) {
    day = "0" + day;
  }
  if (hour >= 0 && hour <= 9) {
    hour = "0" + hour;
  }
  if (minutes >= 0 && minutes <= 9) {
    minutes = "0" + minutes;
  }
  if (seconds >= 0 && seconds <= 9) {
    seconds = "0" + seconds;
  }
  return year + "-" + month + "-" + day + " " + hour + sign2 + minutes + sign2 + seconds;
}
console.log("当前日期"+getNowDate());

获取时间戳:

new date.getTime()

获取指定日期的星期:

// 获取指定日期的星期
let nowDate = new Date("2023-11-11")
let today = nowDate.getDay()
let weekDays = ["星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"];
console.log(weekDays[today]);//星期六

获取指定日期的时间戳:

let dates = new Date
console.log(dates.getTime());

二、对象

增、删、浅拷贝深拷贝

       增

直接使用 直接变量名.属性名 = 属性值

       删

使用 delete

深拷贝和浅拷贝

浅拷贝(shallow copy):只复制指向某个对象的指针,而不复制这个对象本身,新旧对象共享一块内存

深拷贝(deep copy):复制并创建一个一模一样的对象,不共享内存,修改新对象旧对象不会改变

三、布尔值

真值:true

假值:false

四、常用事件

详见:js常用事件总结

五、字符串

详见:js字符串相关操作及方法

六、运算符

详见:JS-基础:JavaScript运算符 个人总结

七、语句

if、for、三元表达式、了解(switch、while)、break、continue作用

if语句

// 1. 条件成立执行的代码语句
if (条件表达式) {
}
// 2.if else 语句
if (条件表达式) {
// [如果] 条件成立执行的代码
} else {
// [否则] 执行的代码
}
// 3. if else if 语句(多分支语句)
// 适合于检查多重条件。
if (条件表达式 1) {
// [如果] 条件一成立执行的代码
} else if (条件表达式 2) {
// [如果] 条件二成立执行的代码
} else if (条件表达式 3) {
// [如果] 条件三成立执行的代码
} else {
// 上述条件都不成立执行此处代码
}

三元表达式

// 如果条件 1 为 true ,则返回成立 2 的值
// 如果条件 1 为 false,则返回不成立 3 的值
条件 1 ? 成立 2 : 不成立 3;

swith条件分支语句

switch( 表达式 ){
case value1:
// 表达式 等于 value1 时要执行的代码
break;
case value2:
// 表达式 等于 value2 时要执行的代码
break;
default:
// 表达式 不等于任何一个 value 时要执行的代码
}

for语句

for(初始化变量①; 条件表达式②; 操作表达式③ ){
// 循环体④
}

1. 初始化变量,初始化操作在整个 for 循环只会执行一次。

2. 执行条件表达式,如果为 true,则执行循环体语句,否则退出循环,循环结束。

3. 执行操作表达式,此时第一轮结束。

4. 第二轮开始,直接去执行条件表达式(不再初始化变量),如果为 true,则去执行循环体

语句,否则退出循环。

5. 继续执行操作表达式,第二轮结束。......

while 循环

while (条件表达式) {
// 循环体代码
}
// 1. 先执行条件表达式,如果结果为 true,则执行循环体代码;
// 如果为 false,则退出循环,执行后面代码
// 2. 执行循环体代码
// 3. 循环体代码执行完毕后,程序会继续判断执行条件表达式

break、continue的作用

continue 关键字用于跳出本次循环,继续下一次循环。

break 关键字用于立即跳出整个循环,使循环结束。

八、调试

除console.log()意外的调试方法:

console.table(arr);
      console.assert()  //适合调试目的
      console.trace();  //帮助您在调用它的位置输出当前堆栈跟踪
      console.error('This is an error message.');
        // error() 可能是第二流行的控制台方法。在 Chrome 控制台中,它以独特的红色显示错误消息。
      console.warn('This is a warning message');
        // console.warn() 在 Chrome 控制台中输出一条黄色消息,表示警告。
//---------------------------------------------------
      console.count();
        // console.count() 记录当前调用 count() 的次数。另一个有用的调试工具。
      console.count();
        // countReset() 方法将标签的计数设置回零。
//---------------------------------------------------
      time()、timeEnd() 和 timeLog()
        //用于测量我们程序中的特定操作需要多长时间。
      console.clear();  //console.clear() 通过清除日志来消除控制台的混乱。
      group()、groupCollapsed() 和 groupEnd()
    //console.group() 向其后的任何控制台消息添加一定程度的缩进。//console.groupEnd() 将缩进重置为调用前面的 console.group() 之前的级别。
      console.dir() 
        // console.dir() 会将其记录为一个对象,显示一个交互式属性列表

九、JSON

转换方式:

           对象转字符串:JSON.stringify()

           字符串转对象:JSON.prase()

十、math对象

详见:js知识总结 -- Math对象、data日期对象的方法及功能

十一、本地存储

       localStorage

       sessionStorage

目录
相关文章
|
6月前
|
JavaScript 前端开发 Java
前端知识点03(JS)
前端知识点概览:了解JS中的this指向,包括全局、函数、new、apply/call/bind及箭头函数的规则。理解script的async和defer属性对脚本加载和执行的影响。探讨setTimeout和setInterval的用法及其在性能上的考量。ES6与ES5的区别在于新语法特性,如let/const、箭头函数、模板字符串、模块化、类和继承等。此外,ES6还引入了Symbol、解构赋值、默认参数、Map/Set和Generator等功能。别忘了点赞和支持作者哦!
49 1
|
6月前
|
XML JavaScript 前端开发
js基础知识
js基础知识
44 2
|
6月前
|
存储 JavaScript 索引
js基础笔记(个人)
js基础笔记(个人)
|
6月前
|
存储 JavaScript 前端开发
js必备知识小结(一)
js必备知识小结(一)
35 0
|
JavaScript 前端开发 数据安全/隐私保护
|
JavaScript
js基础笔记学习226练习2之1
js基础笔记学习226练习2之1
75 0
js基础笔记学习226练习2之1
|
JavaScript
js基础笔记学习227练习2之2
js基础笔记学习227练习2之2
63 0
js基础笔记学习227练习2之2
|
JavaScript
js基础笔记学习268练习2之2
js基础笔记学习268练习2之2
74 0
js基础笔记学习268练习2之2
|
JavaScript
js基础笔记学习270练习3之1
js基础笔记学习270练习3之1
74 0
js基础笔记学习270练习3之1
下一篇
无影云桌面