【发布时间】:2021-11-10 15:21:56
【问题描述】:
给定一个表示数学运算的字符串,我想提取它包含的运算,例如:5+4-3 将返回两个 arrays:运算 = [+,-],操作数将是 [5,4,3]
// grab the input and so stuff when user finishes typing
const selectElement = document.querySelector('.formule');
selectElement.addEventListener('change', (event) => {
const result = document.querySelector('.result');
segmentFormule(event.target.value);
});
const segmentFormule = function (value){
// first separate operands from operations
let myOperands = [];
const formule = new String(value);
// here i extracted the operands into an array, but i couldnt figure out how to extract the operations , so i just hardcoded Addition operation for now.
myOperands=formule.split("+");
let ColoredFormule = "";
for (var i = 0 ; i < myOperands.length ; i++ ) {
ColoredFormule +=
'<span style="color:Red">'+myOperands[i]+'</span> '+'<span style="color:blue">+</span> ';
}
document.querySelector('.result').innerHTML = ColoredFormule;
}
<label for="formuleField">Example input: 56+400+300</label>
</br>
<input type="text" class="formule" name="formuleField">
</br>
<div class="result"></div>
我不知道如何从给定的输入中提取操作,感谢任何帮助。
【问题讨论】:
标签: javascript arrays split