gpt4 book ai didi

javascript - 在javascript中将单独的地址字符串序列化为一个

转载 作者:行者123 更新时间:2023-11-28 02:03:06 24 4
gpt4 key购买 nike

您可能已经知道如何将地址解析为单独的部分,例如单元号/街道号/街道名称/城镇/州等...这里几乎类似的问题。我想将那些单独输入的数据序列化为一个。例如,我有

Level /
Unit number /
Street number /
Street name /
Street type /
Town /
State /
Post code / Etc...

假设用户输入了

blank / blank / 10 / Flinders / lane / blank / VIC / 3000

然后我想将信息存储在一个字符串中,例如

10 Flinders Lane VIC 3000

我目前正在这样做

if (level !== '' && level !== 0) {string = level + '/';}
if (unit !== '' && unit !== 0) {string += unit;}
if (streetNo !== '' && streetNo !== 0) {string += '/' + streetNo + ' ';}
else {string += ' ';}
string += streetName + ' ' + streetType + ' ';
if (town !== '' && town !== '--' && town !== 0) {string += town + ' ';}
else {string += ' ';}
string += state;

它是硬编码的,但我想不出更好的方法。我想知道是否有更好、高效+专业的方法来实现这一点。

最佳答案

因为您想要在字符串上使用的分隔符似乎根据它们跟随的字符串部分而变化(有些有 '/',其他有 ' '),您在那里可能无能为力。

如果分隔符始终相同(例如空格),您可能使用数组,然后使用join:

var parts = [];
if (level !== '' && level !== 0) parts.push(level);
if (unit !== '' && unit !== 0) parts.push(unit);
if (streetNo.g !== '' && streetNo.g !== 0) parts.push(streetNo.g);
if (streetName !== '' && streetName !== 0) parts.push(streetName);
if (streetType !== '' && streetType !== 0) parts.push(streetType);
if (town !== '' && town !== 0 && town !== '--') parts.push(town);
if (state !== '' && state !== 0) parts.push(state);
string = parts.join(' ' );

关于javascript - 在javascript中将单独的地址字符串序列化为一个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18175026/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com