js全局变量在其他方法中赋值后无法影响到该方法外的全局变量的值(奇葩问题)
2023-06-13 09:11:19 时间
大家好,又见面了,我是你们的朋友全栈君。
做个笔记,以防忘记 遇到一个奇葩问题(书写规范不会遇到此问题 ) 问题描述:
$(document).ready(function(){
var strCookie=document.cookie;
username="1";
if (strCookie) {
cookieVariables = strCookie.split(";");
for (i = 0; i < cookieVariables.length; i++) {
cookieName = cookieVariables[i].split("=");
if (cookieName[0] === "username"){
username=cookieName[1];
alert(cookieName[1]);
}
}
}
alert(username);
});
这样两次输出的username值不同第一个弹出的是Superman,第二个弹出“1” 解决办法: 将要赋的值通过一个function()方法的返回值获得
$(document).ready(function(){
var strCookie=document.cookie;
username=getname(username);
function getname(username){
if (strCookie) {
cookieVariables = strCookie.split(";");
for (i = 0; i < cookieVariables.length; i++) {
cookieName = cookieVariables[i].split("=");
if (cookieName[0] === username){
return cookieName[1];
alert("cookieName[1]");
}
}
}else{
return "1";
}
}
alert(username);
});
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/137484.html原文链接:https://javaforall.cn
相关文章
- js面试题及答案2020_JS面试题大全
- JS数字千位符格式化方法
- 记好这24个ES6方法,用于解决实际开发的JS问题
- 原生 JS 实现 HTML 转 Markdown ,html2md.js
- Exploring the Power of Linux and Node.js for Web Development: A Comprehensive Guide(linuxnodejs)
- 妙用JS获取Oracle信息的快速方法(js获取Oracle)
- 数据JS技术实现实时获取Oracle数据(js实时获取oracle)
- js实现运行代码需要刷新的解决方法
- fireworks菜单生成器mm_menu.js在IE7.0显示问题的解决方法
- JS在数组插入字符的实现代码(可参考JavaScriptsplice()方法)
- JS与框架页的操作代码
- JavaScript学习笔记(十七)js优化
- JS的Event事件对象使用方法
- js实时监听文本框状态的方法
- js延迟加载改变JS的位置加快网页加载速度
- javascript学习(一)构建自己的JS库
- js异常捕获方法介绍
- js获取当月最后一天实例代码
- js为空或不是对象问题的快速解决方法
- JS判断对象是否存在的10种方法总结
- js中function()使用方法
- 利用JS解决ie6不支持max-width,max-height问题的方法
- 引入JS文件IE6报语法错误或缺少对象问题的解决方法
- jquery库或JS文件在eclipse下报错问题解决方法
- Node.js中安全调用系统命令的方法(避免注入安全漏洞)
- phpci框架中加载css和js文件失败的原因及解决方法
- JS按回车键实现登录的方法