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

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

问题叙述

前端定义了全局变量

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,把局部变量取消,直接使用全局变量,问题解决了!

道阻且长,行则将至。

相关推荐
陈随易10 分钟前
纯 Go 写的 JS 引擎,跑分超过了 C 语言的 QuickJS
前端·后端·程序员
子兮曰2 小时前
Chrome 权限元素实战:144 与 151 的渐进增强写法
前端·javascript·chrome
IT_陈寒2 小时前
Redis连接池泄漏那次,我差点把生产环境搞崩了
前端·人工智能·后端
强尼银手2 小时前
我花一天做了个格斗游戏原型,判定全对,然后被「美术」劝退了
前端·javascript
石小石Orz2 小时前
AI 正在蚕食我们的编码能力
前端·后端·算法
陈随易3 小时前
专注飞机 FocusFlight,两个人把番茄钟做成了一趟航班
前端·后端·程序员
总要学点什么3 小时前
第98篇:三维特效-材质线效果——给一条线换十种材质,虚线的图案只填了一半
开发语言·前端·javascript·ecmascript·gis·webgl·材质
10share4 小时前
基于大模型的 i18n 方案:把中文原文当 Key,轻松搞定多语言维护
前端·vue.js
古茗前端团队6 小时前
由 key 引发的思考
前端·javascript·react.js
kyriewen6 小时前
我扫了 422 个仓库,近一半 CI 在裸装依赖
前端·javascript·程序员