為什么
這行代碼會等于
怎么等于,return{}是一個對象吧,然后逗號隔開兩個??沒懂書的意思
該代碼于react redux無關(guān),實際上屬于ES6? 7 ?8 我根據(jù)你的代碼
去 babel 項目中 生成了一下代碼 你可以作為參考
let status = {
counterCaption: 1,
id :1
}
function aa() {
return {...status, [counterCaption]: status[counterCaption]++}
}
"use strict";
var _extends = Object.assign ||
function (target) {
for (var i = 1; i < arguments.length; i++) {
var source = arguments[i]; for (var key in source) {
if (Object.prototype.hasOwnProperty.call(source, key)) {
target[key] = source[key];
}
}
}
return target;
};
function _defineProperty(obj, key, value) {
if (key in obj) {
Object.defineProperty(obj, key, {
value: value,
enumerable: true,
configurable: true,
writable: true
});
} else {
obj[key] = value;
}
return obj;
}
var status = {
counterCaption: 1,
id: 1
};
function aa() {
return _extends({},
status,
_defineProperty({}, counterCaption, status[counterCaption]++));
}
轉(zhuǎn)為es5你可以看到 里面的 參數(shù)counterCaption被 _defineProperty函數(shù) 定義到一個空對象中,status也是一個對象
最終被 _extends函數(shù) 給擴展到一個新的對象去
你需要參考一下 阮一峰的 ES6入門 擴展運算符 和 解構(gòu)賦值
這實際上是es6語法的問題 還是向樓上推薦你好好看看阮一峰老師的es6入門教程 http://es6.ruanyifeng.com/
同時解釋下這兩個語法
... 是結(jié)構(gòu)賦值的意思
例如
var a = {a:'123',b:'223'}
如果想講a中的屬性傳給另一個變量那么我們傳統(tǒng)的寫法是
var b = {a:a.a,b:b.b}
如果用結(jié)構(gòu)賦值 就直接 var b = {...a}就ok了
obj[content]是通過變量找到對象屬性
因為你如果直接使用.+變量名 他肯定直接找這個變量名的屬性
如果你用中括號找的就是這個變量對應(yīng)的值得屬性
舉個例子
var c = {d:1,e:2}
var e = 'd'
c.e //2
c[e] //1
北大青鳥APTECH成立于1999年。依托北京大學(xué)優(yōu)質(zhì)雄厚的教育資源和背景,秉承“教育改變生活”的發(fā)展理念,致力于培養(yǎng)中國IT技能型緊缺人才,是大數(shù)據(jù)專業(yè)的國家
達(dá)內(nèi)教育集團成立于2002年,是一家由留學(xué)海歸創(chuàng)辦的高端職業(yè)教育培訓(xùn)機構(gòu),是中國一站式人才培養(yǎng)平臺、一站式人才輸送平臺。2014年4月3日在美國成功上市,融資1
北大課工場是北京大學(xué)校辦產(chǎn)業(yè)為響應(yīng)國家深化產(chǎn)教融合/校企合作的政策,積極推進(jìn)“中國制造2025”,實現(xiàn)中華民族偉大復(fù)興的升級產(chǎn)業(yè)鏈。利用北京大學(xué)優(yōu)質(zhì)教育資源及背
博為峰,中國職業(yè)人才培訓(xùn)領(lǐng)域的先行者
曾工作于聯(lián)想擔(dān)任系統(tǒng)開發(fā)工程師,曾在博彥科技股份有限公司擔(dān)任項目經(jīng)理從事移動互聯(lián)網(wǎng)管理及研發(fā)工作,曾創(chuàng)辦藍(lán)懿科技有限責(zé)任公司從事總經(jīng)理職務(wù)負(fù)責(zé)iOS教學(xué)及管理工作。
浪潮集團項目經(jīng)理。精通Java與.NET 技術(shù), 熟練的跨平臺面向?qū)ο箝_發(fā)經(jīng)驗,技術(shù)功底深厚。 授課風(fēng)格 授課風(fēng)格清新自然、條理清晰、主次分明、重點難點突出、引人入勝。
精通HTML5和CSS3;Javascript及主流js庫,具有快速界面開發(fā)的能力,對瀏覽器兼容性、前端性能優(yōu)化等有深入理解。精通網(wǎng)頁制作和網(wǎng)頁游戲開發(fā)。
具有10 年的Java 企業(yè)應(yīng)用開發(fā)經(jīng)驗。曾經(jīng)歷任德國Software AG 技術(shù)顧問,美國Dachieve 系統(tǒng)架構(gòu)師,美國AngelEngineers Inc. 系統(tǒng)架構(gòu)師。