Using The Arguments Object When Instantiating Via Constructor Function
Jul 20, 2005
Sorry, bad title. Anyway, is there a way to pass the arguments to an object
instantiated via a constructor using the arguments object and have it
expanded, so to speak, so that it doesn't appear as a single argument? I'm
sorry, this explanation is just atrocious, but I can't think of exactly how
to word it. Maybe an example...
Take for instance Function.apply. It takes 1-2 arguments, the first being
the object to use as the context, and the second being either an array or an
instance of the arguments object which are to be the arguments for the
function. I want to do something similar but I want to also basically use
the new operator so that I get back an object.
Here's a snippet of some of my code, maybe this will help:
I'm sure this question has been asked many times before, but I can't seem to get the correct terms to find the answer in Google.I understand basic JavaScript inheritance. However, everything I've read makes the inheritance work something like this:
Code JavaScript: var ChildClass = new Function(); ChildClass.prototype = new ParentClass(); ChildClass.constructor = ChildClass;
That's fine, but what happens when ParentClass's constructor needs parameters?As an example, look at the following code:
Code JavaScript: function Furniture(color){ this.color = color;[code)....
How could I "copy" Furniture's constructor into the Chair object? Better yet, how could I copy Furniture's constructor and then add some functionality to it?
Code: function BaseController(el) { var that = this; this.defaultAction = function() {
[Code]....
What is the proper method here so that el will be defined in the super "class".? I know I saw something on stack overflow a couple of days ago but can not seem to find it again.
admin: Something is up with the code tags, why the system is double posting the code. Does HIGHLIGHT=JS not exists anymore? – That seemed not be working.
How would I go about copying all the prototype functions AND the constructor from one object into another object, and then call them?
I know I can use this.example.call(this), but that's not an acceptable solution. I want to deploy this style over dozens, potentially hundreds of objects.
I need to detect the "name" of the constructor of an object. For example, myArray.constructor === Array is true, but I want something where that === 'Array' is true. I've heard of Object.constructor.name, but it's not widely compatible. (preferably without involving regular expressions)?
Now, the code worked fine in both script. (i.e., no more error.) So far as I can tell, the only differences between the first and next version of Book.js are the comments and the whitespace. Am I missing something? Can the comments or whitespace somehow effect the logic with which this code has been executing? If I get an error like this again, is there an easier/better way to fix it than to essentially retype the code?
How to extend the constructor for the date object of the javasccript so that whenever a call is made to the constructor, I want to perform a particular action? Basically how to define wrappers for default javascript methods or objects like Date() so that I can perform some action and then invoke the original method? So basically if I have something like var a = new Date(); I want it to (say) alert the value of the date everything Date() is called and then execute the default date constructor.
I have a requirement to override the constructor of a javascript class. I have to execute the current constructor code and then call a javascript method. Basically, I need to execute a javascript method whenever an object of that particular class is created in addition to whatever is being done now. I do not want to copy and paste the current constructor code and override the initcomponent method. I am looking for an alternative for that.
I need to create a constructor for a computer object. This object must have three properties: speed, and mem_live mem_dead. Then I need to create a new object using this constructor and then have its properties displayed on the screen.Look at what I'm up to so far:
function Computer(speed, mem_live, mem_dead) { this.speed = speed;
function show() { var s = '' ; for (var i = 0; i<arguments.length; s += ' '+arguments[i++]) ; typeof(window) != 'undefined' ? window.alert(s) : WScript.Echo(s) ; }
function f(){} show('delete(f):',delete(f)) ; // false
The problem is I keep getting an error along the lines of: TypeError: Result of expression 'house' [[object Object]] is not a constructor. It seemed to work when I wasn't passing the other objects as parameters in the constructor. I just created and assigned them later. As in:
I'd like to make a Degree object that inherits from the Number object and uses the Number constructor but adds a .rad() method that returns the value in radians.
If I do something like:
It generally works but I don't get Number's methods like toString and toPrecision.
I had read from books that the constructor property of object is inherited from its prototype. And the prototype can be changed dynamically. New property can be added to or deleted from object even it was created before the prototype change.
I have static object and I want remake it to a constructor with property 'length' which would be not enumerable in for loop... This is my object and how I generate it
I have a setup where I need to get the function calling a function, which works fine, I just use arguments.callee.caller.Now I need to take it a step further and get the object that the function belongs too. For example in a onclick="parentObj.someFunction()" parentObj.someFunction calls some other function. I need a way to know that parentObj was involved, just getting someFunction isn't enough because parentObj has properties that are used in someFunction. To make it more interesting lets say I can't pass any more parameters to someFunction, so I can't pass parentObj into it as an argument.
I have an assignment where one piece of it needs to have the first name, last name, area code, and phone number when prompted by a function, once that info is had, it then needs to use the constructor function that is there to process the data and lastly use the data to output it with a show function. I have it to work with static information, but cant seem to figure what I am missing or how to make the prompt function information to feed to the constructor, I know when using the static variable it uses "new Function" but that seems to be my problem, I am stuck.
see the code below:
<!DOCTYPE html PUBLIC "-W3CDTD XHTML 1.0 TransitionalEN" "http:www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http:www.w3.org/1999/xhtml"> <head>
I know in different languages (VB.Net,C++,C#) how to pass an argument to function in this code: <html> <head> <script language="Javascript"> <!-- hide function openNewWindow() { popupWin = window.open('[URL]', 'open_window', 'menubar, toolbar, location, directories, status, scrollbars, resizable, dependent, width=640, height=480, left=0, top=0') } done hiding --> </script></head><body> <a href="javascript:openNewWindow();">return to front page</a> </body></html>
I need to add several links in my page, so I need to pass indexes from links to main function, so I can open images in specific folder with indexes filenames. For example in vb Subname("text_to_pass_to_SubName") Public Sub SubName(ByVal function_text as string) End Sub
I have a main page that opens a pop up window when the user clicks a link. The pop up window is a menu and when the user clicks the item, it populates a form input element on the 'parent' window.
My question is: this new populated form element is the value that I use to change a style.
onchange does not watch this form element because of getelementbyid, so it doesn't trigger the function needed to change the style. onchange works fine if I just manually input a value into the text box.
Any other way to fire the function off when the user picks their selection from the pop-up window? I was thinking I could use window.opener.function()? But how do I pass the form from the parent window? From the pop up window, I don't use this.form, what do I use?something like window.opener.form[0] ?
What I want is a loop that will call the same function until it reaches a certain number (let's say 10). Then I want the function to take the parameter passed (the number) and use it in the function where ever you see a 1 below. Basically I want it to run on each element of the pub_name array and from the info gathered define a variable based on the number (example: display_pub_name_*). I have run some tests .....
I have an external javascript file with certain attributes defined to open a file in new window, which I use for viewing maps. However I need to define different attributes for the height and width, as I want users to open video clips in smaller windows. What do I need to do? Code:
I'm having problems when passing and element from HTML to a script. I have several rows for a person addresses and when one of those fields change I need to update the value of a flag (that is a hidden element).
I have a function which can be called with an unlimited number of arguments.
I want to call another function with exactly the same arguments. I know I can get the arguments in the arguments object, and as such also in an array, but how do you pass the elements of an array to another function as parameters?