如何从JavaScript对象Test中提取指定属性值至新变量
提取JavaScript对象属性值的几种实用方法
嘿,这事儿挺简单的,我给你分享几种靠谱的方式,从Test对象里把你要的三个属性值提取出来:
方法1:ES6对象解构(推荐!简洁又优雅)
这是现在前端开发里最常用的方式,尤其适合一次性提取多个属性。注意带空格的属性名需要用引号包裹,还可以给它们起个更易写的别名(比如把"Janice Scott"改成janiceScott):
// 直接提取为独立变量 const { test_bookmarks, "Janice Scott": janiceScott, "Birmingham all": birminghamAll } = Test; // 如果想把它们整合到一个新对象里: const extractedObj = { test_bookmarks, janiceScott: Test["Janice Scott"], birminghamAll: Test["Birmingham all"] }; // 或者更紧凑的解构写法直接生成新对象: const extractedObj = (({ test_bookmarks, "Janice Scott": janiceScott, "Birmingham all": birminghamAll }) => ({ test_bookmarks, janiceScott, birminghamAll }))(Test);
方法2:手动赋值(适合不熟悉解构的场景)
如果对ES6解构不太熟,手动提取也很稳妥。重点是带空格的属性名不能用点语法访问,必须用方括号[]:
const extractedObj = {}; // 不带空格的属性可以直接用点语法 extractedObj.test_bookmarks = Test.test_bookmarks; // 带空格的属性必须用方括号+引号 extractedObj.janiceScott = Test["Janice Scott"]; extractedObj.birminghamAll = Test["Birmingham all"];
小提醒
要是不确定Test对象里一定有这些属性,最好先做个存在性检查,避免出现undefined或者报错:
if (Test && "test_bookmarks" in Test && "Janice Scott" in Test && "Birmingham all" in Test) { // 这里放心执行提取操作就行 }
内容的提问来源于stack exchange,提问作者Bombo
相关产品推荐
相关产品推荐

