The g in the regular expression (short for global) says to search the whole string rather than just find the first occurrence. This matches is twice:
var temp = "This is a string.";var count = (temp.match(/is/g) || []).length;console.log(count);And, if there are no matches, it returns 0:
var temp = "Hello World!";var count = (temp.match(/is/g) || []).length;console.log(count);