成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

您可能未使用過的JavaScript功能

開發 前端
JavaScript具有許多經常使用的功能。 但是,有些功能可能我們大多數人都沒有使用過。在本文中,我們將介紹其中一些功能以及可能的用例。

JavaScript具有許多經常使用的功能。 但是,有些功能可能我們大多數人都沒有使用過。

在本文中,我們將介紹其中一些功能以及可能的用例。

[[325501]]

標記模板文字

帶有標簽的模板文字是處理模板字符串的函數。

它們經常在React庫中使用,例如樣式組件庫。 此功能實際上很有用。

它使我們可以輕松地解析模板字符串文字。 它使我們可以使用函數來解析模板文字。

例如,我們可以按以下方式使用它:

  1. const tag = (strings, ...vals) => { console.log(strings); console.log(vals);}const name = 'foo';tag `Hi ${name}`; 

在上面的代碼中,我們有he標記函數和vals數組,該函數具有包含字符串的各個部分的字符串函數,該函數具有插值到字符串中的值。

在上面的示例中,我們有一個數組,其中'Hi'和''作為string的值。

在vals數組中,我們有'foo'。

我們可以使用它來返回要返回的對象。 例如,我們可以如下重寫標記函數:

  1. const tag = (strings, ...vals) => { return `${strings[0]}! ${vals[0]}`} 

在上面的代碼中,我們從string和vals中獲取字符串的各個部分,并放入!。 在兩個表達式之間。

然后我們得到嗨! 返回值的foo。

逗號運算符

逗號運算符始終返回由逗號運算符分隔的項目列表中的最后一項。

例如,我們可以按以下方式使用它:

  1. const foo = (1, 2, 3); 

然后我們得到3。

它可以使用任何表達式,并且始終返回最后一個求值的表達式。

With

with運算符絕對是我們不應該使用的運算符。 在嚴格模式下禁止使用。

該運算符在語言中增加了一些性能和安全性問題。 它用于擴展語句的作用域鏈。

它的用法如下:

  1. with(expression) statement 

要么:

  1. with(expression) { statement statement ...} 

在上面的代碼中,我們圍繞expression創建了一個新范圍。

塊中的所有語句都將表達式作為父范圍。

例如,我們可以按以下方式使用它:

  1. const obj = { a: 1, b: 2, c: 3}  
  2. with(obj) {  
  3. console.log(a, b, c);  

在上面的代碼中,with塊內的表達式都將相對于obj對象進行范圍限定。

因此,a,b和c實際上是obj.a,obj.b和obj.c。

與with一樣,塊范圍變量在with塊之外不可用。

例如,如果我們有:

  1. const obj = { a: 1, b: 2, c: 3}  
  2. with(obj) {  
  3. console.log(a, b, c);  
  4. let x = 1 
  5.  
  6. console.log(x); 

如果嘗試在x上調用console.log,則在with塊之外引用x時,會出現錯誤。

In

in運算符對于檢查屬性是對象的一部分還是原型鏈中的任何原型非常有用。

如果該屬性在對象中或原型鏈中的任何屬性中,則返回true,否則返回false。

例如,如果我們具有以下類結構和對象:

  1. class Foo { constructor() { this.a = 1; }}  
  2. class Bar extends Foo {  
  3. constructor() {  
  4. super();  
  5. this.b = 2 
  6. this.c = 3; }  
  7.  
  8. const bar = new Bar(); 

然后,如果我們記錄以下表達式的返回值:

  1. console.log('a' in bar);  
  2. console.log('b' in bar);  
  3. console.log('c' in bar); 

我們認為所有日志都是正確的。

這是因為bar以Foo實例作為其原型,并且in運算符檢查對象本身及其原型的屬性。

因此,in bar也是如此。 如果我們只想檢查該屬性是否為非繼承屬性,則必須使用obj.hasOwnProperty方法,其中obj是沒有null原型的任何JavaScript對象。

結論

標記的模板文字可用于將模板字符串轉換為所需的值。

逗號運算符始終返回逗號分隔列表中的最后一項。

in運算符檢查屬性是否在對象或其原型中。

是您的JavaScript代碼中不應該包含的內容。

 

責任編輯:趙寧寧 來源: 今日頭條
相關推薦

2010-03-12 09:15:28

Firefox新功能

2022-10-17 15:47:19

JavaScript開發Web

2016-03-23 11:03:40

2023-09-27 22:14:10

GIT 命令開發

2014-03-25 09:18:25

2023-09-13 09:20:00

日志配置Spring

2020-03-23 20:57:02

SD-WAN網絡

2017-11-06 14:55:53

windows文件歸納

2016-10-25 15:36:49

Linux命令工具

2023-02-15 08:34:12

測試移動開發

2023-03-15 08:00:00

Node軟件包管理器開發

2019-11-05 16:51:41

JavaScript數據es8

2021-04-05 22:33:24

Windows 10Windows微軟

2025-02-13 09:37:26

2022-05-18 08:00:26

函數劫持JavaScript鉤子函數

2009-05-13 10:28:28

Linux命令

2020-03-19 19:00:01

Linux命令

2019-06-11 10:07:30

戴爾

2009-08-03 17:31:26

.NET驗證控件

2020-07-28 08:28:07

JavaScriptswitch開發
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 欧美日韩在线一区二区三区 | 成人不卡 | 欧美激情精品久久久久 | 久久99久久98精品免观看软件 | 九九av| 3p视频在线观看 | av电影手机在线看 | 精品久久久久久久久久久下田 | 一级黄大片 | 超碰成人在线观看 | 成人免费av | 亚洲欧美综合 | 亚洲视频在线一区 | 亚洲天堂一区 | 亚州精品天堂中文字幕 | 日本成人三级电影 | 欧美涩| 91在线导航 | 亚洲精品久久久久久久久久久久久 | 欧美在线高清 | a级性视频| 日韩三级在线 | 免费欧美视频 | 色嗨嗨| 久久精品日产第一区二区三区 | 午夜精品一区二区三区免费视频 | 欧美激情黄色 | av日韩在线播放 | 免费人成在线观看网站 | 国产欧美在线视频 | 在线国产一区二区三区 | 91人人看| 91麻豆精品国产91久久久更新资源速度超快 | 婷婷色国产偷v国产偷v小说 | 欧美一级二级三级视频 | 91p在线观看| 91久色 | 国产精品一区二区视频 | 中文字幕视频在线 | 嫩草伊人| 日韩手机在线视频 |