Tôi có chuỗi là this is test for alternative
. Những gì tôi muốn tìm là vị trí của for
. Tôi biết tôi có thể đã làm điều này bằng cách sử dụng
function myIndexOf[myString, word] {
var len = myString.length;
var wordLen = word.length;
for[var i = 0; i < len; i++] {
var j = 0;
for[j = 0; j < wordLen; j++] {
if[myString[i+j] != word[j]] {
break;
}
}
if[j == wordLen] {
return i;
}
}
return -1;
}
0, tuy nhiên tôi không muốn sử dụng function myIndexOf[myString, word] {
var len = myString.length;
var wordLen = word.length;
for[var i = 0; i < len; i++] {
var j = 0;
for[j = 0; j < wordLen; j++] {
if[myString[i+j] != word[j]] {
break;
}
}
if[j == wordLen] {
return i;
}
}
return -1;
}
1.Bất kỳ ý tưởng/ đề xuất cho sự thay thế?
JSfiddle
Một lần nữa, tôi chỉ cần được thực hiện bởi JavaScript. Không có jquery .. thật đáng buồn :[Javascript only. No jQuery.. sadly :[
Mark Fox
8,5439 Huy hiệu vàng53 Huy hiệu bạc73 Huy hiệu đồng9 gold badges53 silver badges73 bronze badges
Đã hỏi ngày 2 tháng 12 năm 2012 lúc 12:16Dec 2, 2012 at 12:16
Fahim Parkarfahim ParkarFahim Parkar
30.3K41 Huy hiệu vàng157 Huy hiệu bạc274 Huy hiệu đồng41 gold badges157 silver badges274 bronze badges
4
.search[]?
"this is test for alternative".search["for"]
>> 13
Đã trả lời ngày 2 tháng 12 năm 2012 lúc 12:21Dec 2, 2012 at 12:21
3
Bạn có thể mã hóa chỉ mục của riêng bạn? Bạn lặp trên chuỗi nguồn và trên mỗi ký tự bạn kiểm tra xem nó có thể là từ được tìm kiếm của bạn không.
Một phiên bản chưa được kiểm tra để cung cấp cho bạn một ý tưởng:
function myIndexOf[myString, word] {
var len = myString.length;
var wordLen = word.length;
for[var i = 0; i < len; i++] {
var j = 0;
for[j = 0; j < wordLen; j++] {
if[myString[i+j] != word[j]] {
break;
}
}
if[j == wordLen] {
return i;
}
}
return -1;
}
Đã trả lời ngày 2 tháng 12 năm 2012 lúc 12:24Dec 2, 2012 at 12:24
Koopajahkoopajahkoopajah
22.2K9 Huy hiệu vàng72 Huy hiệu bạc101 Huy hiệu đồng9 gold badges72 silver badges101 bronze badges
Trong hầu hết các ngôn ngữ,
function myIndexOf[myString, word] {
var len = myString.length;
var wordLen = word.length;
for[var i = 0; i < len; i++] {
var j = 0;
for[j = 0; j < wordLen; j++] {
if[myString[i+j] != word[j]] {
break;
}
}
if[j == wordLen] {
return i;
}
}
return -1;
}
2 trả về -1 nếu không tìm thấy phần tử, IMO có hiệu quả một chút. Sự thay thế tốt nhất cho điều này trong ngôn ngữ lập trình của bạn là gì? Có bất kỳ chức năng nào sẽ chỉ trả về giá trị boolean cho biết nếu phần tử được tìm thấy?
9
Phương thức
2 trả về chỉ mục đầu tiên mà tại đó một phần tử nhất định có thể được tìm thấy trong mảng hoặc -1 nếu nó không có.function myIndexOf[myString, word] {
var len = myString.length;
var wordLen = word.length;
for[var i = 0; i < len; i++] {
var j = 0;
for[j = 0; j < wordLen; j++] {
if[myString[i+j] != word[j]] {
break;
}
}
if[j == wordLen] {
return i;
}
}
return -1;
}
2 method returns the first index at which a given element can be found in the array, or -1 if it is not present. function myIndexOf[myString, word] {
var len = myString.length;
var wordLen = word.length;
for[var i = 0; i < len; i++] {
var j = 0;
for[j = 0; j < wordLen; j++] {
if[myString[i+j] != word[j]] {
break;
}
}
if[j == wordLen] {
return i;
}
}
return -1;
}
Thử nó
Cú pháp
indexOf[searchElement]
indexOf[searchElement, fromIndex]
Thông số
function myIndexOf[myString, word] {
var len = myString.length;
var wordLen = word.length;
for[var i = 0; i < len; i++] {
var j = 0;
for[j = 0; j < wordLen; j++] {
if[myString[i+j] != word[j]] {
break;
}
}
if[j == wordLen] {
return i;
}
}
return -1;
}
4Phần tử để định vị trong mảng.
function myIndexOf[myString, word] {
var len = myString.length;
var wordLen = word.length;
for[var i = 0; i < len; i++] {
var j = 0;
for[j = 0; j < wordLen; j++] {
if[myString[i+j] != word[j]] {
break;
}
}
if[j == wordLen] {
return i;
}
}
return -1;
}
5 Tùy chọnOptionalChỉ mục để bắt đầu tìm kiếm tại. Nếu chỉ mục lớn hơn hoặc bằng chiều dài của mảng, -1 được trả về, điều đó có nghĩa là mảng sẽ không được tìm kiếm. Nếu giá trị chỉ mục được cung cấp là một số âm, nó được lấy làm phần bù từ cuối mảng. Lưu ý: Nếu chỉ mục được cung cấp là âm, mảng vẫn được tìm kiếm từ trước đến sau. Nếu chỉ mục được cung cấp là 0, thì toàn bộ mảng sẽ được tìm kiếm. Mặc định: 0 [toàn bộ mảng được tìm kiếm].
Giá trị trả lại
Chỉ số đầu tiên của phần tử trong mảng; -1 nếu không tìm thấy.-1 if not found.
Sự mô tả
function myIndexOf[myString, word] {
var len = myString.length;
var wordLen = word.length;
for[var i = 0; i < len; i++] {
var j = 0;
for[j = 0; j < wordLen; j++] {
if[myString[i+j] != word[j]] {
break;
}
}
if[j == wordLen] {
return i;
}
}
return -1;
}
2 so sánh function myIndexOf[myString, word] {
var len = myString.length;
var wordLen = word.length;
for[var i = 0; i < len; i++] {
var j = 0;
for[j = 0; j < wordLen; j++] {
if[myString[i+j] != word[j]] {
break;
}
}
if[j == wordLen] {
return i;
}
}
return -1;
}
4 với các phần tử của mảng bằng cách sử dụng bình đẳng nghiêm ngặt [cùng một phương pháp được sử dụng bởi toán tử function myIndexOf[myString, word] {
var len = myString.length;
var wordLen = word.length;
for[var i = 0; i < len; i++] {
var j = 0;
for[j = 0; j < wordLen; j++] {
if[myString[i+j] != word[j]] {
break;
}
}
if[j == wordLen] {
return i;
}
}
return -1;
}
8 hoặc ba công bằng].Phương pháp
function myIndexOf[myString, word] {
var len = myString.length;
var wordLen = word.length;
for[var i = 0; i < len; i++] {
var j = 0;
for[j = 0; j < wordLen; j++] {
if[myString[i+j] != word[j]] {
break;
}
}
if[j == wordLen] {
return i;
}
}
return -1;
}
2 bỏ qua các khe trống trong các mảng thưa thớt.Phương pháp
function myIndexOf[myString, word] {
var len = myString.length;
var wordLen = word.length;
for[var i = 0; i < len; i++] {
var j = 0;
for[j = 0; j < wordLen; j++] {
if[myString[i+j] != word[j]] {
break;
}
}
if[j == wordLen] {
return i;
}
}
return -1;
}
2 là chung chung. Nó chỉ mong đợi giá trị indexOf[searchElement]
indexOf[searchElement, fromIndex]
1 có thuộc tính indexOf[searchElement]
indexOf[searchElement, fromIndex]
2 và các thuộc tính được khóa.Ví dụ
Sử dụng indexof []
Ví dụ sau sử dụng
function myIndexOf[myString, word] {
var len = myString.length;
var wordLen = word.length;
for[var i = 0; i < len; i++] {
var j = 0;
for[j = 0; j < wordLen; j++] {
if[myString[i+j] != word[j]] {
break;
}
}
if[j == wordLen] {
return i;
}
}
return -1;
}
2 để định vị các giá trị trong một mảng.const array = [2, 9, 9];
array.indexOf[2]; // 0
array.indexOf[7]; // -1
array.indexOf[9, 2]; // 2
array.indexOf[2, -1]; // -1
array.indexOf[2, -3]; // 0
Tìm thấy tất cả các sự xuất hiện của một yếu tố
const indices = [];
const array = ['a', 'b', 'a', 'c', 'a', 'd'];
const element = 'a';
let idx = array.indexOf[element];
while [idx !== -1] {
indices.push[idx];
idx = array.indexOf[element, idx + 1];
}
console.log[indices];
// [0, 2, 4]
Tìm kiếm nếu một phần tử tồn tại trong mảng hay không và cập nhật mảng
function updateVegetablesCollection [veggies, veggie] {
if [veggies.indexOf[veggie] === -1] {
veggies.push[veggie];
console.log[`New veggies collection is: ${veggies}`];
} else {
console.log[`${veggie} already exists in the veggies collection.`];
}
}
const veggies = ['potato', 'tomato', 'chillies', 'green-pepper'];
updateVegetablesCollection[veggies, 'spinach'];
// New veggies collection is: potato,tomato,chillies,green-pepper,spinach
updateVegetablesCollection[veggies, 'spinach'];
// spinach already exists in the veggies collection.
Sử dụng indexof [] trên các mảng thưa thớt
Bạn không thể sử dụng
function myIndexOf[myString, word] {
var len = myString.length;
var wordLen = word.length;
for[var i = 0; i < len; i++] {
var j = 0;
for[j = 0; j < wordLen; j++] {
if[myString[i+j] != word[j]] {
break;
}
}
if[j == wordLen] {
return i;
}
}
return -1;
}
2 để tìm kiếm các khe trống trong các mảng thưa thớt.console.log[[1, , 3].indexOf[undefined]]; // -1
Gọi indexof [] trên các đối tượng không phải là
Phương thức
function myIndexOf[myString, word] {
var len = myString.length;
var wordLen = word.length;
for[var i = 0; i < len; i++] {
var j = 0;
for[j = 0; j < wordLen; j++] {
if[myString[i+j] != word[j]] {
break;
}
}
if[j == wordLen] {
return i;
}
}
return -1;
}
2 đọc thuộc tính indexOf[searchElement]
indexOf[searchElement, fromIndex]
2 của indexOf[searchElement]
indexOf[searchElement, fromIndex]
1 và sau đó truy cập vào từng chỉ mục số nguyên.const arrayLike = {
length: 3,
0: 2,
1: 3,
2: 4,
};
console.log[Array.prototype.indexOf.call[arrayLike, 2]];
// 0
console.log[Array.prototype.indexOf.call[arrayLike, 5]];
// -1
Thông số kỹ thuật
Thông số kỹ thuật ngôn ngữ Ecmascript # sec-array.prototype.indexof # sec-array.prototype.indexof |
Tính tương thích của trình duyệt web
Bảng BCD chỉ tải trong trình duyệt