可能重复:
可以分配给数组中的多个变量吗?
如果在python中我可以做到这一点
x = "Hi there and hello there"
v1, v2, v3, v4, v5 = x.split(" ")
但我不知道如何在javascript中做到这一点..
可能重复:
可以分配给数组中的多个变量吗?
如果在python中我可以做到这一点
x = "Hi there and hello there"
v1, v2, v3, v4, v5 = x.split(" ")
但我不知道如何在javascript中做到这一点..
您可以使用 javascript 将其转换为数组.split
例如
x = "Hi there and hello there";
var array = x.split(" ");
然后你所有的变量都将在数组中,如下所示
array[0]
array[1]
array[2]
您可以使用 console.log 或类似的警报来显示这一点。
console.log(array[0]);
alert(array[0]);
参考
http://www.tizag.com/javascriptT/javascript-string-split.php
你问的是所谓的“解构赋值”,它是 Javascript 1.7 的一个特性。遗憾的是,并非所有浏览器都支持这些 JS 1.7 功能(例如,Chrome 执行标记为 JS 1.7 的代码但尚不支持此功能)。
您的代码可以在 Firefox 上运行(只要您将其标记为 JS 1.7 并稍作修改),但不能在 Chrome 上运行。
要查看实际情况,请在Firefox中使用以下命令:
<script type="application/javascript;version=1.7"/>
x = "Hi there and hello there"
var [v1, v2, v3, v4, v5] = x.split(" ")
</script>
split
将字符串拆分为字符串数组。
拆分返回一个数组。
var x = "Hi there and hello there"
var v = x.split(" ")
console.log(v[0]);
console.log(v[1]);
如果您可以将变量附加到一个对象,那么您可以这样做:
var stringToWords = function (str) {
if (typeof str === "string") {
var stringsArray = str.split(" "),
stringsSet = {};
for (var i = 0, wordsNumber = stringsArray.length; i < wordsNumber; i++) {
stringsSet['str' + (i + 1)] = stringsArray[i];
}
return stringsSet;
} else {
return str + " is not a string!!!"}
};
// 这将返回一个带有所需字符串的对象
var allStringWords = stringToWords("Hi there and hello there");
//那么你可以通过这种方式访问一个单词:
allStringWords.str1
但我敢肯定有更短的方法来获得相同的