javascript - 函数参数可以传递到字符串中吗?
问题描述
我正在用 javascript 制作一个计算器表,而且我一直在写作document.getElementById('x').innerHTML
。我可以写一个函数来替换这段代码吗?例如:
function select (a) {
return document.getElementById(${a}).innerHTML;
}
我看到的问题是,如果我在 中使用模板文字getElementById
,则无法添加将字符串定义为字符串所需的引号。
回到上下文中,我在一个表中有许多单元格,每个单元格都有不同的 ID。为了让 js 更新每个单元格,我不得不反复写:document.getElementById('x').innerHTML
. 这让我想知道,我可以写一个小函数让我跳过这个额外的输入吗?函数可以接受一个参数并用引号括起来返回它吗?
解决方案
只是
var select = function(a) {
return document.getElementById(a).innerHTML;
}
var ham = select('thing');
已经足够好了。系统已经知道那里有一个字符串,因为这是您调用select()
函数时的类型。
如果您在为 分配值时尝试减少输入innerHTML
,那么您也必须在函数体中执行此操作。为什么?因为一旦你从函数返回 innerHTML 字符串属性,它就是一个不可变的值,类似于说'a' = 'b'
.
下面是分配函数的样子:
var assign = function( target, value) {
document.getElementById(target).innerHTML = value;
}
assign('capitalGain', '$' + currency(initialGain));
推荐阅读
- emacs - 组织模式扩展来为预定的条目/子树着色?
- typo3 - TYPO3 cms-indexed-search 核心扩展缺少 RouteEnhancer?
- spring - java.lang.IllegalStateException:无法在 Spring JPA 单元测试中加载 ApplicationContext
- sql - 为两个不同的输出查询同一列
- javascript - 审计 Node (Javascript) 应用程序实现的工具
- perl - 使用 Perl 获取 UTC/GMT 时间的前一小时
- android - 无法从编辑文本中获取数据,Android Kotlin
- javascript - 在 window.addEventListener("load" function () {});
- swift - 在 UIViewRepresentable SwiftUI 中设置自定义 UIView 框架
- python-3.x - 如何键入提示返回已在函数中创建的 NamedTuple 的函数