📜  在文本中包含在对象中 - Javascript (1)

📅  最后修改于: 2023-12-03 15:37:43.346000             🧑  作者: Mango

在文本中包含在对象中 - Javascript

在Javascript中,经常需要在文本中判断是否包含某个特定的字符串或者子串,或者需要判断一个对象中是否包含某个属性。本文将为您介绍在Javascript中如何实现这些功能。

判断一个字符串是否包含另一个字符串

在Javascript中,我们可以通过使用String.prototype.includes()方法来判断一个字符串是否包含另一个字符串。

const str = 'Hello, world!';
console.log(str.includes('world')); // true
console.log(str.includes('World')); // false

在上面的例子中,我们调用了includes()方法来判断str字符串是否包含world,返回true。在第二次调用中,我们判断的是World,由于Javascript区分大小写,所以返回false

判断一个字符串是否以另一个字符串开头或结尾

在Javascript中,我们可以使用String.prototype.startsWith()String.prototype.endsWith()方法来判断一个字符串是否以另一个字符串开头或结尾。

const str = 'Hello, world!';
console.log(str.startsWith('Hello'));   // true
console.log(str.startsWith('Hello', 1));// false
console.log(str.endsWith('world!'));    // true
console.log(str.endsWith('World!'));    // false

在上面的例子中,我们调用了startsWith()方法来判断str字符串是否以Hello开头,返回true。在第二次调用中,我们将第二个参数设置为了1,表示从索引1开始判断,由于str字符串并不以Hello开头,所以返回false。在第三次调用中,我们调用了endsWith()方法来判断str字符串是否以world!结尾,返回true。在第四次调用中,我们判断的是World!,由于Javascript区分大小写,所以返回false

判断一个对象是否包含某个属性

在Javascript中,我们可以通过使用in操作符或者Object.prototype.hasOwnProperty()方法来判断一个对象是否包含某个属性。

const obj = { foo: 1, bar: 2 };
console.log('foo' in obj);                  // true
console.log('toString' in obj);            // true
console.log(obj.hasOwnProperty('foo'));    // true
console.log(obj.hasOwnProperty('toString'));// false

在上面的例子中,我们使用in操作符来判断obj对象是否包含footoString属性,分别返回truetrue。由于Javascript中的所有对象都继承了Object.prototype中的方法和属性,所以toString也被认为是obj对象的一个属性。接着,我们调用了hasOwnProperty()方法来判断obj对象是否包含footoString属性,分别返回truefalse。由于hasOwnProperty()方法只判断自身属性,所以不认为toStringobj对象的一个属性。