【发布时间】:2022-01-20 13:17:20
【问题描述】:
我在浏览器中使用控制台来使用 JS 抓取和排序内容。 这是我的代码
这是我的结果数组
var arr = [
"George\nPresident & Founder",
"content",
"Ronald\nCountry Director, America",
"content",
"Kriss, PhD\nVice President",
"content",
"Joseph, MS\nDirector",
"content",
"Elizabeth\nDevelopment Operations",
"content",
"Lisa, MFA, MBA\nU.S. Content",
"content.",
"Natalia\nCountry Director"
]
这是我尝试过的:
for(var i=0; len = result.length, i < len; i++){
result[i]['something'] = [];
if(i === 0){
result[i].split('\n');
}
else if (i % 2 === 0) {
result[i].split('\n');
}
console.log(result[i]);
result[i]['test'].push(result[i]);
}
返回结果[i]['something'] = [];未定义 但是当我 console.log(result[i]) 我得到正确的结果。我试图复制(JSON.stringify(result[i])) 但我只取回一个对象。
for(var i=0; len = result.length, i < len; i++){
var arr = [];
if(i === 0){
result[i].split('\n');
}
else if (i % 2 === 0) {
result[i].split('\n')
}
arr.push(result[i])
// console.log(result[i]);
console.log(arr);
}
这不会拆分它们,它只是将它们推入数组。
当我 console.log(result[i]) 我得到: (这是对的,但它不是字符串,也不是数组;我也不能复制这个)
George
President & Founder
content
Ronald
Country Director America
content
Kriss PhD
Vice President
content
Joseph MS
Director
content
Elizabeth
Development Operations
content
Lisa MFA MBA
U.S. Content
content
Natalia
Country Director
我的最终目标应该是这样的:
var result = [
["George"],
["President & Founder"],
[ "content" ],
[ "Ronald"]
["Country Director, America" ],
[ "content" ],
[ "Kriss, PhD"],
["Vice President" ],
[ "content" ],
[ "Joseph, MS"],
["Director" ],
[ "content" ],
[ "Elizabeth"],
["Development Operations" ],
[ "content" ],
[ "Lisa, MFA, MBA"],
["U.S. Content" ],
[ "content." ],
[ "Natalia"],
["Country Director" ],
[ "content." ]
]
我该怎么做才能得到结果[i] 并使用 copy(JSON.stringify(result)) 将其复制到我的剪贴板上?
【问题讨论】:
-
你尝试过的有很多问题。为什么输入是数组数组而不仅仅是字符串数组?为什么要给数组一个
'test'属性?split没有修改任何东西——它返回一个结果,但你忽略它。问题太多了……然后你问关于复制和剪贴板的问题。这太宽泛了。您可能应该退后一步,从更简单的东西开始,在扩展它之前先检查它是否有效。 -
结果数组实际上是一个字符串数组。对于那个很抱歉。至于“测试”,如果这是命名约定问题,我可以更改它,但我不明白这与代码中的问题有什么关系......
-
你会给一个普通对象一个
'test'属性,而不是一个数组——或者在输入被更正为一个字符串数组之后——而不是一个字符串(这是原始的) .如果您觉得这与代码中的问题无关,那么我担心您错了。但是无论如何您都应该提供最少的代码来重现您的问题,所以如果您认为'test'属性与它无关,那么它不应该出现在您的问题中。 -
好的,我刚刚将名称“test”更改为“something”,这样应该可以解决这个问题
-
问题不在于名称,问题在于您分配给不是对象的某物的属性。字符串原语没有空间来存储属性。他们会被遗忘。
标签: javascript arrays json