动态更新变量JS
Update Variable Dynamically JS
我想使用带空格的其他字段的值来更新一个字段的值。如果值为null,则不应添加空格。我应该使用什么逻辑,因为我不能在值集中使用IF。
示例
document.getElementById("target").value= Constant+if(name){" "+this.value}+if(age){" "+this.value}+if(height){" "+this.value};
将字符串格式代码放入可以使用if语句的函数中。
document.getElementById("target").value = formatValue();
function formatValue(){
var formattedString = Constant;
if(name){
formattedString += " " + name;
}
if(age){
formattedString += " " + age:
}
if(height){
formattedString += " " + height:
}
return formattedString;
}
如果您不希望使用命名函数,请使用自调用匿名函数:
document.getElementById("target").value = (function(){
var formattedString = Constant;
if(name){
formattedString += " " + name;
}
if(age){
formattedString += " " + age:
}
if(height){
formattedString += " " + height:
}
return formattedString;
})();
您要查找的是一个三元运算符。一个布尔条件,后跟?
,并返回true
值,在:
之后返回false值。
console.log((name ? name : '') + (age ? age : ''));
不过,就你所做的而言,我不会用这种方式连接一堆燕鸥。制作一个数组,然后加入。
var parts = [];
if (name) {
parts.push(name);
}
if (age) {
parts.push(age);
}
// etc. etc.
console.log(parts.join(' '));
如果您可以使用Array.filter(较新的浏览器),则可以简化您的数组,而不需要所有的if
语句:http://www.devign.me/javascript-tip-remove-falsy-items-out-of-an-array
相关文章:
- JS变量返回的对象不是值
- 我怎么能让流星简单模式中的一个字段等于一个js变量,并且仍然让用户填写简单模式的其余部分
- 向AngularJS目录添加JS变量
- 在使用cq:include包含外部JS之前,如何在JSP中包含全局JS变量
- 将PHP数组传递给js变量
- 如何从谷歌脚本中获取JS变量
- 敲除js变量设置类似于调用函数
- 带破折号的Ractive.js变量
- jQuery在MVC应用程序中设置JS变量
- HTML按钮获胜't更改JS变量
- 在跨子域上将JS变量从子Iframe传递给父JSP
- 理解bootstrap.js变量声明
- 使用HTML标记中的JS变量在Javascript中动态创建HTML
- 访问JQuery中的vue-js变量
- AJAX将JSON数组保存到多个JS变量中
- 在构造控制器、服务等时作为函数参数传递之前列出的角度 JS 变量
- 将JS变量作为文本返回以发送到Google Analytics
- 将JS变量传递到php数组
- 如何将JS变量异步发送到Rails
- 正在读取JS变量