[英]Trim Leading and Trailing Spaces
從名稱“undefined”修剪前導和尾隨空格。
trimName接受一個人作為參數。 人永遠是一個對象。 如果未定義名稱,則返回undefined。 否則,返回修剪后的名稱。
var person = {};
var trimmedName;
person.name;
function trimName(person) {
// If you do not set this variable to a value, it will be
// undefined.
// Do a check here to see if a person's name is defined.
if (person.name = 'undefined') {
return 'undefined';
}
else {
trimmedName = person.name.trim();
return trimmedName;
}
}
trimName(' sam ');
我沒有在那里看到一個問題...但我看到代碼的問題:
=
您應該使用比較運算符==
。 'undefined'
比較不是檢查屬性是否未定義的方法。 trim
方法僅存在於IE的最新版本(9)中。 碼:
function trimName(person) {
var trimmed;
if (typeof person.name == 'undefined') {
trimmed = 'undefined';
} else {
trimmed = person.name.replace(/(^\s+|\s+$)/g, '');
}
return trimmed;
}
var trimmedName = trimName({ name: ' sam ' });
你應該做
var personTest = {name: ' sam'};
function trimName(person) {
// If you do not set this variable to a value, it will be
// undefined.
// Do a check here to see if a person's name is defined.
if (typeof person.name === 'undefined') {
return 'undefined';
}
else {
var trimmedName = person.name.trim();
return trimmedName;
}
}
alert(trimName(' sam '));
alert(trimName(personTest));
pastebin http://jsbin.com/oqovog/edit#source
function trimName(person) {
// Check if the name of the person was defined
// If not, return undefined
if (person.name == 'undefined') {
return 'undefined';
}
else {
// Otherwise trim the name and return it.
return person.name.replace(/^\s+|\s+$/g, '');
}
}
// Create a person, set his name to " sam " with the spaces.
var person = {};
person.name = " sam ";
// Pass sam (the person object) to your function
// Then alert() the result.
alert(trimName(person));
看看這里的代碼並閱讀評論。 我們創建一個person對象,用前導和尾隨空格設置他的名字。 我們將它傳遞給我們測試它是否定義的函數。 如果是,我們返回修剪過的名稱。
以下是編輯。
var person = {}; //creates the object "person"
person.name = prompt('Please enter a name'); //defines name as a property
function trimName(person) { //and gives it a value
// If the property "name" is undefined
// return undefined
if (name === undefined) { //returns the code state "undefined"
return undefined; // if name is undefined
} else if (person.name === '') { //returns a prompt if no name is entered
return 'Please enter a name';
} else {
// Trim the "name" property, ensure it is a string
return (person.name + '').trim(); //trims leading/trailing spaces
}
}
trimName(person); //defines object person as a variable of function trimName
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.