JavaScript函数可以自己工作,但不能一起工作

JavaScript函数可以自己工作,但不能一起工作,javascript,user-defined-functions,Javascript,User Defined Functions,今天我开始构建一个虚拟客户端web应用程序项目,以提高我的基本JavaScript技能。基本上,这是一个在线运行的科学计算器模拟。正如您在代码中看到的,我的HTML文件中有一些按钮,每个按钮都调用我的JavaScript文件中的一个JavaScript函数。计算器根本不起作用,我的意思是,当我试着调试时,JavaScript文件中的每个函数都按预期工作,但它们似乎不能一起工作 这是我的密码: var currentMode='deg'; var screen=document.getEleme

今天我开始构建一个虚拟客户端web应用程序项目,以提高我的基本JavaScript技能。基本上,这是一个在线运行的科学计算器模拟。正如您在代码中看到的,我的HTML文件中有一些按钮,每个按钮都调用我的JavaScript文件中的一个JavaScript函数。计算器根本不起作用,我的意思是,当我试着调试时,JavaScript文件中的每个函数都按预期工作,但它们似乎不能一起工作

这是我的密码:

var currentMode='deg';
var screen=document.getElementById(“screen”);
var lastChar=screen.value.slice(-1);
/**
*辅助功能
*/
函数为数值(val){
return!isNaN(parseFloat(val))和&isFinite(val);
}
函数正弦(val){
如果(当前模式==='deg'){
返回Math.sin(Math.PI*val/180);
}
返回Math.sin(val);
}
函数cos(val){
如果(当前模式==='deg'){
返回Math.cos(Math.PI*val/180);
}
返回Math.cos(val);
}
函数tan(val){
如果(当前模式==='deg'){
返回Math.tan(Math.PI*val/180);
}
返回Math.tan(val);
}
函数ln(val){
返回Math.log(val);
}
/**
*计算器功能
*/
函数addSpecial(val){
var nums=['0','1','2','3','4','5','6','7','8','9'];
变量运算=['+'、'-'、'*'、'/'、'^'];
如果(screen.value==“0”){
if(nums.indexOf(val)>=0)
screen.value=val;
else if(val=='.| | operations.indexOf(val)>=0)
screen.value+=val;
其他的
screen.value='0';
}else if(lastChar=='.| | operations.indexOf(lastChar)>=0){
if(val!='.&&val!='='&&operations.indexOf(val)<0)
screen.value+=val;
}否则{
如果(val!='='='))
screen.value+=val;
否则{
if(lastChar=='.| | operations.indexOf(lastChar)>=0)
screen.value='语法错误!';
else if(screen.value.split(“(”)!==screen.value.split(“)”)
screen.value='错误!打开或关闭密码!';
否则{
试一试{
screen.value=eval(screen.value);
}捕捉(错误){
screen.value=err.message;
}
}
}
}
}
功能设置角度模式(新模式){
如果(新模式==='rad'){
如果(当前模式==='deg'){
currentMode='rad';
screen.value*=Math.PI/180;
}
}否则{
如果(当前模式=='rad'){
电流模式='deg';
screen.value*=180/Math.PI;
}
}
}
函数addSymbol(val){
开关(val){
案例'pi':
screen.value=Math.PI;
打破
案例“e”:
screen.value=Math.E;
打破
案例‘phi’:
screen.value=1.61803398875;
打破
案例“gamma”:
screen.value=0.5772156649;
}
}
函数clearScreen(){
screen.value='';
}
函数clearLast(){
屏幕值切片(0,-1);
}
函数inverseVal(){
var len=screen.value.length;
var-subs;
对于(变量i=0;ii;--j){
subs=屏幕值切片(i,j);
if(isNumeric(subs)){
screen.value=1/parseFloat(subs);
打破
}
}
}
}
函数addSquare(){
if(isNumeric(lastChar)| | lastChar===')'){
screen.value+=“^2”;
}
}
函数addPower(){
if(isNumeric(lastChar)| | lastChar===')'){
screen.value+='^';
}
}
函数addSquareroot(){
if(isNumeric(lastChar)| | lastChar===')'){
screen.value+='^(1/2)';
}
}
函数addRoot(){
if(isNumeric(lastChar)| | lastChar===')'){
screen.value+='^(1/';
}
}
函数addExp(){
if(isNumeric(lastChar)| | lastChar===')'){
screen.value+='Math.E^';
}
}
函数addSin(){
if(isNumeric(lastChar)| | lastChar===')'){
screen.value+='正弦(';
}
}
函数addCos(){
if(isNumeric(lastChar)| | lastChar===')'){
screen.value+='cos(';
}
}
函数addTan(){
if(isNumeric(lastChar)| | lastChar===')'){
screen.value+='tan(';
}
}
函数addLn(){
if(isNumeric(lastChar)| | lastChar===')'){
screen.value+='ln(';
}
}
h5{
文本对齐:右对齐;
颜色:#333333;
字体系列:Arial;
字体大小:12px;
字体大小:粗体;
保证金:3倍;
}
输入[类型=文本]{
文本对齐:右对齐;
高度:50px;
宽度:176像素;
填充:6px;
边框:10px槽#8888888;
背景色:#E5DFA0;
字体系列:Luicida,monospace;
}
.科学{
位置:相对位置;
顶部:0px;
左:33像素;
}
.科学输入[类型=按钮]{
宽度:28px;
高度:28px;
背景色:#4444;
颜色:#BBBBBB;
字体系列:Verdana;
字号:8px;
字体大小:粗体;
填充:2px;
边缘顶部:2倍;
右边距:2.5px;
边缘底部:0px;
左边距:2.5px;
边界:无;
}
.scientific input[类型=按钮]。基数{
宽度:28px;
高度:28px;
背景色:红色;
颜色:白色;
字体系列:Verdana;
字号:8px;
字体大小:粗体;
填充:2px;
边缘顶部:2倍;
右边距:2.5px;
边缘底部:0px;
左边距:2.5px;
边界:无;
}
.科学输入[类型=图像]{
宽度:24px;
高度:24px;
背景色:#4444;
填充:2px;
边缘顶部:2倍;
右边距:2.5px;
边缘底部:0px;
左边距:2.5px;
边界:无;
}
.简单输入[类型=按钮]{
宽度:32px;
高度:32px;
背景色:#EEEEEE;
颜色:#22222;
字体系列:Verdana;
字体大小:11px;
}
.simple input[类型=按钮].roman{
字体系列:“时代新罗马”,衬线;
字体大小:13px;
}
#含钙量{
宽度:180px;
保证金:0px自动;
}

科学计算器
科学计算器