比较实用的JavaScript 片段有哪些
发表于:2024-09-23 作者:千家信息网编辑
千家信息网最后更新 2024年09月23日,比较实用的JavaScript 片段有哪些,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。1.三元运算符let someT
千家信息网最后更新 2024年09月23日比较实用的JavaScript 片段有哪些
比较实用的JavaScript 片段有哪些,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
1.三元运算符
let someThingTrue = true if(someThingTrue){ handleTrue() }else{ handleFalse() } ****** 以下是简短版本 ****** let someThingTrue = true someThingTrue ? handleTrue() : handleFalse()
2.短路或运算
const defaultValue = "SomeDefaultValue" let someValueNotSureOfItsExistance = null let expectingSomeValue = someValueNotSureOfItsExistance || defaultValue console.log(expectingSomeValue) // SomeDefaultValue
3. 条件成立
let someValue = true if (someValue) { console.log('条件成立!') }
4. for 循环
for (let i = 0; i < 1e2; i++) { // 代替 i<100 是不是有点酷 } let someValues = [1, 2, 4] for (let val in someValues) { console.log(val) } let obj = { 'key1': 'value1', 'key2': 'value2', 'key3': 'value3' } for (let key in obj) { console.log(key) }
5. 值到对象的映射
let x='x',y='y' let obj = {x,y} console.log(obj) // {x: "x", y: "y"}
6. Object.entries()
const credits = { producer: '大迁世界', name: '前端小智', rating: 9 } const arr = Object.entries(credits) console.log(arr) *** 输出 *** [ [ 'producer', '大迁世界' ], [ 'name', '前端小智' ], [ 'rating', 9 ] ]
7. Object.values()
const credits = { producer: '大迁世界', name: '前端小智', rating: 9 } const arr = Object.values(credits) console.log(arr) *** 输出 *** [ '大迁世界', '前端小智', 9 ]
8. 模板字面量
let name = '前端小智' let age = 20 var someStringConcatenateSomeVariable = `我是 ${name},今年 ${age} 岁` console.log(someStringConcatenateSomeVariable)
9. 解构赋值
import { observable, action, runInAction } from 'mobx';
10.多行字符串
let multiLineString = `some string\n with multi-line of\n characters\n` console.log(multiLineString)
11.Array.find 简写
const pets = [{ type: 'Dog', name: 'Max' }, { type: 'Cat', name: 'Karl' }, { type: 'Dog', name: 'Tommy' } ] pet = pets.find(pet => pet.type === 'Dog' && pet.name === 'Tommy') console.log(pet) // { type: 'Dog', name: 'Tommy' }
12.默认参数值
早期的做法
function area(h, w) { if (!h) { h = 1; } if (!w) { w = 1; } return h * w }
ES6 以后的做法
function area(h = 1, w = 1) { return h * w }
13.箭头函数的简写
let sayHello = (name) => { return `你好,${name}` } console.log(sayHello('前端小智'))
简写如下:
let sayHello = name => `你好,${name}` console.log(sayHello('前端小智'))
14.隐式返回
let someFuncThatReturnSomeValue = (value) => { return value + value } console.log( someFuncThatReturnSomeValue('前端小智'))
简写如下:
let someFuncThatReturnSomeValue = (value) => ( value + value ) console.log(someFuncThatReturnSomeValue('前端小智'))
15.函数必须有参数值
function mustHavePatamMethod(param) { if (param === undefined) { throw new Error('Hey You must Put some param!'); } return param; }
以像这样重写:
mustHaveCheck = () => { throw new Error('Missing parameter!') } methodShoudHaveParam = (param = mustHaveCheck()) => { return param }
16.charAt() 简写
'SampleString'.charAt(0) // S // 简写 'SampleString'[0]
17.有条件的函数调用
function fn1() { console.log('I am Function 1') } function fn2() { console.log('I am Function 2') } /* 长的写法 */ let checkValue = 3; if (checkValue === 3) { fn1() } else { fn2() }
简短的写法:
(checkValue === 3 ? fn1 : fn2)()
17.Math.Floor 简写
let val = '123.95' console.log(Math.floor(val)) // 常规写法 console.log(~~val) // 简写
18.Math.pow 简写
Math.pow(2, 3) // 8 // 简写 2 ** 3 // 8
19.将字符串转换为数字
const num1 = parseInt('100') // 简写 console.log(+"100") console.log(+"100.2")
20.&& 运算
let value = 1; if (value === 1) console.log('Value is one') //OR In short value && console.log('Value is one')
21.toString 简写
let someNumber = 123 console.log(someNumber.toString()) // "123" // 简写 console.log(`${someNumber}`) // "123"
22.可选的链运算符(即将发布)
现在有一个关于ECMAScript的新提议,值得了解。
let someUser = { name: 'Jack' } let zip = someUser?.address?.zip //可选链接,像 Swift
如果 zip是undefined ,则不会引发错误。
该语法还支持函数和构造函数调用
let address = getAddressByZip.?(12345)
如果getAddressByZip是调用它的函数,否则,表达式将以undefined的形式计算。
23. 使用对象的方式来替换 switch 语法
let fruit = 'banana'; let drink; switch (fruit) { case 'banana': drink = 'banana juice'; break; case 'papaya': drink = 'papaya juice'; break; default: drink = 'Unknown juice!' } console.log(drink) // banana juice
看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注行业资讯频道,感谢您对的支持。
简写
前端
小智
函数
世界
运算
写法
条件
简短
你好
做法
参数
字符
字符串
对象
语法
运算符
帮助
支持
输出
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
成都网络安全产业规划
潍坊软件开发方案
服务器机柜一架功率大概多少
甲骨文服务器不能看到界面
钓鱼岛服务器太卡怎么办
河北廊坊网络技术公司
易讯网络技术有限公司
人口数据库录入系统
计算机网络技术是学什么h
数据库表中的数据类型有什么意义
安卓10不支持数据库吗
如何查询数据库服务器信息
数据库分离与附加t sql
服务器安全防护方式
服务器计算机特点和应用场合
梅河口华为服务器
天津棋牌软件开发公司
网络安全需要考虑哪几个方面
银杏服务器
网安大队网络安全执法
网络安全个人诈骗
成都网络安全产业规划
spring 禁用数据库
嵌入式软件开发是否已经
本地服务器怎么连接oracle
防范网络安全铃声
软件开发求职信格式范文
网信办网络安全应急中心
redis怎么做数据库缓存
广州探途网络技术公司股票