2013-12-10 38 views

Trả lời

13
for(var i=0;i<array.length;i++){ 
    array[i]="#"+array[i]; 
} 
15

lặp qua mảng và chỉ cần thêm #

var arr = [your array]; 

for (var i=arr.length; i--;) { 
    arr[i] = '#' + arr[i]; 
} 

FIDDLE

Trong trình duyệt mới hơn bạn có thể làm

arr = arr.map(function(e) {return '#' + e}); 
+0

tôi có thể hiểu khi những người mới làm điều đó, nhưng tôi không nghĩ rằng người dùng-đại diện cao nên trả lời "câu hỏi" như thế này. Một lời bình luận (+ thân thiện "những gì bạn đã thử" bình luận) sẽ là một cách hữu ích hơn. – georg

+2

@ thg435 - có vẻ như là một câu hỏi hợp pháp đối với tôi, ngay cả khi đó không phải là điều thực sự khó làm, hoặc tìm ra một chút thử thách và sai sót. – adeneo

+0

"Các câu hỏi yêu cầu mã phải thể hiện sự hiểu biết tối thiểu về vấn đề đang được giải quyết. Bao gồm các giải pháp đã thử, tại sao chúng không hoạt động và kết quả mong đợi". – georg

1

Sử dụng phương pháp forEach (reference)

var array = ["ZS125-48ATab", "STR125YBTab", "KS125-24Tab", "ZS125-50Tab", "DFE125-8ATab", "ZS125-30Tab", "HT125-8Tab", "HT125-4FTab", "STR50Tab"]; 
array.forEach(function(element, index) { 
    array[index] = '#' + element; 
}); 
1

Đoạn mã dưới đây sẽ thực hiện công việc:

var t = ["ZS125-48ATab", "STR125YBTab", "KS125-24Tab", "ZS125-50Tab", "DFE125-8ATab", "ZS125-30Tab", "HT125-8Tab", "HT125-4FTab", "STR50Tab"]; 

    for(var i=0;i<t.length;i++){ 
     t[i] = "#"+t[i]; 
    }  

Xem bản demo here

3

Bạn có thể làm điều đó như thế này:

array = ('#' + array.join('#')).match(/#[^#]*/g) || []; // null || [] 

Bí quyết sau đây làm việc là tốt, nhưng Tôi tự hỏi tại sao split bỏ qua hình ảnh đầu tiên ...

array = ('#' + array.join('#')).split(/(?=#)/); 

Thật vậy, tôi khá mong đợi trường hợp này: "#a#b#c" -> ["", "#a", "#b", "#c"].

Dù sao, tôi thích phương pháp thứ hai kể từ match trả về null trong trường hợp không thành công.

+1

+1 để cung cấp cách tiếp cận phức tạp hơn ;-) – acostache

+0

@acostache Trickier nhưng có thể đắt hơn :-) – leaf

8

Ví dụ cho ES6

var arr = ['first', 'second', 'third'];  
arr = arr.map(i => '#' + i); 

Kết quả:

console.log(arr); // ["#first", "#second", "#third"] 
+0

Vui lòng xem xét chỉnh sửa bài đăng của bạn để thêm giải thích thêm về mã của bạn và lý do giải quyết vấn đề. Một câu trả lời mà hầu hết chỉ chứa mã (ngay cả khi nó hoạt động) thường không giúp OP hiểu được vấn đề của họ. – SuperBiasedMan

+0

cảm ơn, đã sửa nó. –

Các vấn đề liên quan