"Это 15-й день моего участия в августовском испытании обновлений. Узнайте подробности события:Испытание августовского обновления"
В этой статье описываются некоторые работы по общим навыкам программирования на JavaScript. Очень полезно, предлагаю попрактиковаться в быстром чтении, помните об этом!
Прежде всего, я рекомендую плагин для VSCode, Quokka.js, Artifact код отладки. Функция плагина - немедленно выполнить код JavaScript или Tymdercript Code, который вы вводите.
стрелочная функция
Сокращенное правило:
- Параметр только один, скобки можно не указывать
- Возвращаемое значение только одно, фигурные скобки и возврат можно не указывать
let arr=[1,2,3]
arr.filter((item)=>{
return item >1
})
//只有一个参数,小括号可以不写
arr.filter(item=>{
return item>1
})
//返回值只有一个,花括号和return可以不写
arr.filter(item=>item>1)
Освойте общие методы работы с массивами
Освойте распространенные методы работы с массивами, держите их в уме, не смотрите на API, когда их пишете, это может эффективно повысить эффективность кодирования, ведь эти методы используются каждый день
- every
- some
- filter
- map
- forEach
- find
- findIndex
- reduce
- includes
Освойте общие функции работы со строками
- trim
- startsWidth
- includes
let str="Hello JueJue "
//包含子串
console.log(str.includes("Hello"))
// 以子串开头
console.log(str.startsWith("Hello"))
// 去除收尾空格
console.log(str.trim())
спред оператор
Очень полезно, вот два сценария использования: Разрушение массива
//数组去重
function removeRepeat(arr){
return [...new Set(arr)]
}
//数组求最大值
Math.max(...arr)
Math.min(...arr)
деконструировать объект
//react 用于一次传入多个属性
let props={name:'Ben',age:10,sex:0}
const greeting=<Greeting {...props} />
//组合对象 这种情况可以使用Object.assign代替
let defaultParams={
pageSize:1,
pageNumber:10,
sort:1
}
let reqParams={
...defaultParams,
phone:'15196255885'
}
сокращение объекта
Ключ и значение объекта имеют одно и то же имя, вы можете просто написать ключ и использовать намного меньше кода.
let id,age,sex
let person={
id,
age,
sex
}
присваивание деструктуризации
- для параметров функции
- для разрушения объектов
Чуть меньше кода
class Spirit{
constructor({x=0,y=0,w=10,h=10,rotate=0}){//函数参数结构
this.x=x
this.y=y
this.w=w
this.h=h
this.rotate=rotate
}
draw(){
const {x,y,w,h,rotate}=this
console.log("draw -> x,y,w,h,rotate", x,y,w,h,rotate)
}
}
Узнайте, как преобразовывать типы данных
Люди, которые пишут JS, обычно не имеют понятия о типах и не очень чувствительны к различиям между Number и String. На самом деле, тип данных JS очень важен. Если вы не обратите внимание, вы можете сделать ошибки, поэтому я Надеюсь, вы помните следующие методы.
Преобразование между числовыми и строковыми типами
Обычно мне нравится использовать конструктор для превращения
Number('001') //-> 1
String('1') // ->1
сохранить N за десятичные места
function cutNumber(value,n=2){//默认保留2位小数
return Number(value).toFixed(n)
}