前端定义了全局变量后,再定义一个同名的局部变量

先说结论:不要这样定义,不然会发生莫名其妙的错误。

问题叙述

前端定义了全局变量

javascript 复制代码
var selectedSheet;

在后面的函数中又定义局部变量

javascript 复制代码
function switchToSheet() {
        var selectedSheet = document.getElementById('selectSheet').value;
        fetch('/get_data')
            .then(response => response.json())
            .then(data => {
                hot.loadData(data[selectedSheet]);
            })
            .catch(error => console.error('Error switching sheet:', error));
    }

此时我要把数据打包传回后端

javascript 复制代码
body: JSON.stringify({
     sheet_name: selectedSheet, // 将当前选中的下拉框值传递给后端
     data: hot.getData() // 将当前表格数据传递给后端
})

问题出现了,返回到后端的数据只有data,而一直拿不到sheet_name,把局部变量取消,直接使用全局变量,问题解决了!

道阻且长,行则将至。

相关推荐
lvchaoq19 分钟前
页面停留时间过长导致token过期问题
前端
elangyipi12324 分钟前
深入理解前端项目中的 package.json 和 package-lock.json
前端·json
LYFlied36 分钟前
【算法解题模板】-【回溯】----“试错式”问题解决利器
前端·数据结构·算法·leetcode·面试·职场和发展
composurext37 分钟前
录音切片上传
前端·javascript·css
程序员小寒37 分钟前
前端高频面试题:深拷贝和浅拷贝的区别?
前端·javascript·面试
狮子座的男孩42 分钟前
html+css基础:07、css2的复合选择器_伪类选择器(概念、动态伪类、结构伪类(核心)、否定伪类、UI伪类、目标伪类、语言伪类)及伪元素选择器
前端·css·经验分享·html·伪类选择器·伪元素选择器·结构伪类
zhougl99643 分钟前
Vue 中的 `render` 函数
前端·javascript·vue.js
听风吟丶44 分钟前
Spring Boot 自动配置深度解析:原理、实战与源码追踪
前端·bootstrap·html
跟着珅聪学java1 小时前
HTML中设置<select>下拉框默认值的详细教程
开发语言·前端·javascript
IT_陈寒1 小时前
JavaScript 性能优化:5个被低估的V8引擎技巧让你的代码提速50%
前端·人工智能·后端