我可以内爆一个数组在jQuery像在PHP?
当前回答
作为将来的参考,如果你想模仿PHP的implode()在没有指定分隔符时的行为(字面上只是将碎片连接在一起),你需要将一个空字符串传递到Javascript的join()中,否则它默认使用逗号作为分隔符:
var bits = ['H', 'e', 'l', 'l', 'o', ' ', 'W', 'o', 'r', 'l', 'd'];
alert(bits.join()); // H,e,l,l,o, ,W,o,r,l,d
alert(bits.join('')); // Hello World
其他回答
数组中。加入是你所需要的,但如果你喜欢,phpjs.org的友好的人已经为你创建了内爆。
然后是一些离题的咆哮。正如@jon_darkstar已经指出的,jQuery是JavaScript,而不是JavaScript。你不需要知道JavaScript就能理解如何使用jQuery,但它当然没有坏处,一旦你开始欣赏可重用性或开始着眼于大局,你绝对需要学习它。
数组中。Join不是识别“;”如何作为分隔符,而是将其替换为逗号。使用jQuery,你可以使用$。(注意output_saved_json是数组,tmp是存储内爆数组的字符串):
var tmp = "";
$.each(output_saved_json, function(index,value) {
tmp = tmp + output_saved_json[index] + ";";
});
output_saved_json = tmp.substring(0,tmp.length - 1); // remove last ";" added
我已经使用substring来删除最后一个“;”添加在最后没有必要。 但如果你喜欢,你可以使用子字符串,比如:
var tmp = "";
$.each(output_saved_json, function(index,value) {
tmp = tmp + output_saved_json[index];
if((index + 1) != output_saved_json.length) {
tmp = tmp + ";";
}
});
output_saved_json = tmp;
我认为最后一个解决方案比第一个更慢,因为它需要检查index是否不同于数组的长度,而每次$。每一个都没有结束。
你可以在JavaScript中使用Array.prototype.join:
arrayName.join(delimiter);
我们可以在javascript中创建implode的替代品:
function my_implode_js(separator,array){
var temp = '';
for(var i=0;i<array.length;i++){
temp += array[i]
if(i!=array.length-1){
temp += separator ;
}
}//end of the for loop
return temp;
}//end of the function
var array = new Array("One", "Two", "Three");
var str = my_implode_js('-',array);
alert(str);
作为将来的参考,如果你想模仿PHP的implode()在没有指定分隔符时的行为(字面上只是将碎片连接在一起),你需要将一个空字符串传递到Javascript的join()中,否则它默认使用逗号作为分隔符:
var bits = ['H', 'e', 'l', 'l', 'o', ' ', 'W', 'o', 'r', 'l', 'd'];
alert(bits.join()); // H,e,l,l,o, ,W,o,r,l,d
alert(bits.join('')); // Hello World
推荐文章
- 给一个数字加上st, nd, rd和th(序数)后缀
- 如何以编程方式触发引导模式?
- setTimeout带引号和不带括号的区别
- 在JS的Chrome CPU配置文件中,'self'和'total'之间的差异
- 用javascript检查输入字符串中是否包含数字
- 如何使用JavaScript分割逗号分隔字符串?
- 在Javascript中~~(“双波浪号”)做什么?
- 谷歌chrome扩展::console.log()从后台页面?
- 未捕获的SyntaxError:
- [].slice的解释。调用javascript?
- jQuery日期/时间选择器
- 我如何预填充一个jQuery Datepicker文本框与今天的日期?
- 数组的indexOf函数和findIndex函数的区别
- jQuery添加必要的输入字段
- Access-Control-Allow-Origin不允许Origin < Origin >