나는이 문제에 대한 연구를 해왔다. 내가 콘솔에서 다음과 같습니다 계산 된 값의 배열을 조작하는 것을 시도하고있다 :이 배열은 내가 함께 왔어요 약간의 수학을 통해 동적을 만들어배열의 객체에있는 객체 제거하기
{nodeVoltages: Array(11), totalPower: Array(1), xlength: Array(11)}
nodeVoltages: Array(11)
0:48
1:47.71306060387108
2:47.250273223993105
3:46.59686907269243
4:45.71876416434013
5:44.53304242029258
6:42.745236969423615
7:Complex {re: 40.38334500994142, im:1.919295696316476, __ember1513267958317: "ember368"}
8:Complex { re:39.55961661806138, im:3.8933604519196416, __ember1513267958317: "ember369"}
하기 때문에 입력 된 데이터가없는 것을 I 줄 수 있어요. 나는 위의 배열은 다음과 같이 만들려고 노력 해요 :
{nodeVoltages: Array(11), totalPower: Array(1), xlength: Array(11)}
nodeVoltages: Array(11)
0:48
1:47.71306060387108
2:47.250273223993105
3:46.59686907269243
4:45.71876416434013
5:44.53304242029258
6:42.745236969423615
7:40.38334500994142
8:39.55961661806138
mathjs를 사용하여, 나는 내 식을 평가하고 동적 사항 Array.push 명령을 배열에 값을 추가하고 표시 할 수 있었다. 그러나 내 배열의 결과에서 상수 값이 팝업되면 코드가 중단됩니다.
배열에서 이러한 허수를 어떻게 제거 할 수 있습니까? 즉, 표시된 배열로 밀어 넣기 전에 값의 "im :"부분을 제거해야합니다.
var nodeVoltage2 = parser.eval(expression2);
//checks if there are imaginary values and removes them
if ("im" in nodeVoltage2) {
nodeVoltage2.splice(2,1)
}
//adds value to result array for analysis
nodeVoltages.push(nodeVoltage2);
하지만 "메신저가 정의되지 않은"콘솔에서 반환
은 내가 다른 사람의 질문과 같은 ( How do I remove a particular element from an array in JavaScript?) 스플 라이스 명령에 이전 답변에서 발견 된 일부 코드를 사용하여이 작업을 수행하려 .도움을 주시면 대단히 감사하겠습니다.
입력 데이터를 JSON 형식과 예상 출력으로 공유하십시오. –
개체의 "속성"을 제거하려고하고 있으며 해당 키를 문자열 ("im")로 지정해야합니다. – isherwood
이 경우,'im'은 정의되어 있지 않습니다. 당신은 어디에도 정의 할 수 없지만, 당신은 그것을 비교하려고합니다. "if"in "nodeVoltage2"에서 nodeVoltage2에 "im"이라는 키가 있는지 검사 할 수 있습니다. – chrisz