Javascript 创建一个人-设置并更改名字和姓氏

Javascript 创建一个人-设置并更改名字和姓氏,javascript,function,object,Javascript,Function,Object,我试图构建一个函数,通过首先接收全名并使用方法设置第一个、最后一个和全名来创建一个人。之后,它将拥有能够更改名称每个部分的方法 我当前的代码如下所示: var Person = function(firstAndLast) { var name = firstAndLast; this.getFirstName = function() { return name.substr(0,name.indexOf(' ')); }; this.getLastName =

我试图构建一个函数,通过首先接收全名并使用方法设置第一个、最后一个和全名来创建一个人。之后,它将拥有能够更改名称每个部分的方法

我当前的代码如下所示:

var Person = function(firstAndLast) {

  var name = firstAndLast;

  this.getFirstName = function() { 
    return name.substr(0,name.indexOf(' '));
  };

  this.getLastName = function() { 
    return name.substr(name.indexOf(' ')+1);
  };

  this.getFullName = function() {
    return name;
  };

  this.setFirstName = function() { 
    return name;
  };

  this.setLastName = function() { 
    return name;
  };

  this.setFullName = function() {
    return name;
  };

};

var bob = new Person('Bob Ross');
bob.setFullName();
现在,当我有时间传一个新名字时,我完全被卡住了,所以如果我做了以下事情:

bob.setFullName('George Carlin')

然后通过:

bob.getFullName()

我应该得到“乔治·卡林”的答案

但这并没有发生


一如既往地感谢。

所以问题是我没有真正理解值是如何传递的,我应该处理零件而不是全名

var Person = function(firstAndLast) {

var firstName = firstAndLast.split(' ')[0];
var lastName = firstAndLast.split(' ')[1];

this.setFirstName = function(firstNameNew) { 
  firstName = firstNameNew;
};

this.setLastName = function(lastNameNew) { 
  lastName = lastNameNew;
};

this.setFullName = function (fullNameNew) {
  firstName = fullNameNew.split(' ')[0];
  lastName = fullNameNew.split(' ')[1]; 
};

this.getFullName = function() {
  return firstName + ' ' + lastName;
};

this.getFirstName = function() { 
return firstName;
};

this.getLastName = function() { 
return lastName;
};


};

var bob = new Person('Bob Ross');

this.setFullName=函数(fullName){name=fullName;}。。。