函数外的数组会被分配空间,但是函数外的变量不会在javascript中分配
array outside a function is allocated space, but a variable outside a function is not allocated in javascript why?
这是我的javascript代码:
var strp = [0,19,26,33,40,46,49,57,61,65,67,73,76];
var i = document.getElementById("length").value;
function calculator(){
document.write("the total cost is " + strp[document.getElementById("length").value]);
document.write("total is ");
document.write(strp[i]);
}
我正试图在这里写一个计算函数。HTML部分是这样的:
<form>
select size : <select id="length">
<option value="0">Please Choose One...</option>
<option value="1">10 inches</option>
<option value="2">12 inches</option>
</select>
<input type="button" value="Calculate" onclick="calculator()" />
</form>
当我在浏览器中执行此代码时,我通过"getelementbyid值"访问数组,我得到了正确的答案。但是当我将getelmentbyid值存储在变量中,并使用该变量访问数组时,输出是未定义的,为什么会这样?
这是document.write()
擦除所有以前的页面内容。请使用适当的DOM操作方法,如innerHTML或appendChild()。
我猜i
是未定义的,因为javascript在html之前呈现。所以,当i
被创建时,还没有id长度的元素。试着把javascript放到html下面来解决这个问题。
相关文章:
- 如何在jQuery中将链接函数分配给变量
- 如何在不使用javascript执行的情况下为函数分配参数
- Javascript从函数分配属性
- 将JavaScript函数分配给提交按钮,该按钮应有条件执行
- 将 jQuery 函数分配给变量不起作用,但包装它不起作用
- 通过参数将传递的函数分配给动态创建的输入类型的onclick事件
- 如何将printThis插件函数分配给按钮
- Javascript-将函数分配给变量dos'不能按预期工作
- 将函数分配为原型函数的属性
- JavaScript 将函数分配给变量而不运行它
- 是否将函数分配给变量的区别
- q 从 .then 函数分配给更高级别的作用域变量是否存在任何陷阱
- JavaScript 将函数分配给对象属性
- 为 jQuery 函数分配多组参数
- 在 JavaScript 中将同一函数分配给多个变量时出现性能问题
- 使用eval使用字符串输入按名称将函数分配给变量有什么风险
- 如何将函数分配给在页面加载后动态添加的元素
- 为什么在模块模式中将函数分配给变量
- 将异步函数及其回调函数分配给单个变量
- 我无法为我的 jquery 函数分配鼠标悬停事件