Troubleshooting: Unable to retrieve length of array within a JavaScript class

My customized JavaScript class includes an array, but when I attempt to add a method to return its length, it consistently returns 0. I have a feeling that I might be overlooking something important.. any suggestions?

http://jsfiddle.net/ypWsZ/1/


function MyObject(){
    this.name='';
}

var selected = (function(){
    var arr = new Array();

    return {
        add : function(s){
            arr.push(s);
        },
        length: function(){
            return arr.length;
        }()
    };
})();

$(document).ready(function(){
    var obj = new MyObject();
    obj.name = 'test';

    selected.add(obj);
    selected.add(obj);
    alert(selected.length);
});

Answer №1

    calculateLength: function(){
        return arr.length;
    }()

Error: length is the outcome (0) of calling an unidentified function. Please delete the () at the end and replace with:

alert(selected.calculateLength());

Similar questions

If you have not found the answer to your question or you are interested in this topic, then look at other similar questions below or use the search

When applying a cell formatter to change the color of a Tabulator cell, the text displayed is being

I am attempting to dynamically change the color of a tabulator cell based on its input. My initial approach was to simply try changing the cell's color. After running the following code, here is what I observed: function testFormatter(cell, formatt ...

Update the inputs following the filtering or searching of issues in VueJS

As a newcomer to VueJS, I find myself struggling with a particular function and lack the experience to fully grasp it. To address my confusion, I have formulated a question (which may be similar to others). For instance, I utilized the computed propert ...

Guide on generating a JSON dataset by combining two arrays and sending it back to an AJAX request

key:[id,name,address] value:[7,John,NewYork] I would like to generate a JSON object similar to {"id": 7, "name": "John", "address": "NewYork"} using a for loop, and then send it back to ajax $.ajax({ //what should be ...

How can you prevent a tag from firing in Google Tag Manager by identifying a particular script included in the HTML code

Seeking advice on modifying our Google Tag Manager container as I am a novice when it comes to GTM. Encountering an issue with IE8 on pages utilizing Fusion Charts resulting in a javascript error in gtm.js. Upon investigation, it appears to be related to a ...

"Troubleshooting a blank page issue in Angular UI Router caused by query string

I've been struggling with an issue related to query string parameters for quite some time. When I navigate to /, everything works perfectly fine. However, if I try something like /?anything, it simply doesn't work. These are the configurations in ...

How to Determine the Length of a Subarray in JavaScript

I am working with a JSON element that contains nested arrays: json = [ { "category": "Electronic", "param": "param1", "subMenu": [ { "subCategory": "Audio & Hifi", ...

Displaying the contents of a slot in various locations within a web component

The Challenge I am currently utilizing Angular and its Angular Elements to produce Webcomponents. My goal is to allow clients the flexibility to pass custom icons into slots, enabling them to control the appearance of the icons being used. However, this ...

Issue with Leaflet.js: GeoJSON layer obscured by tilelayer, causing interactivity problems

I am currently working on a leaflet.js project that involves a baselayer, a polygon geojson layer, and another tilelayer positioned above the geojson layer displaying placenames. I have managed to successfully display the placenames tilelayer above the geo ...

What is the best way to restore the original dimensions of images after they have been altered?

I have content displayed on a webpage with images, each image having a specific width or none specified. When a user clicks a button, the content is exported to a PDF file. To ensure the images fit correctly on the PDF page, I adjust their width and height ...

If a user enters an incorrect path, the goal is to automatically redirect them to the homepage while displaying the correct URL in AngularJS

When the URL is manually edited, the webpage displays the same content with a different URL structure. For instance, http://www.example.com/# and http://www.example.com/#/abc both show identical content. I would like to implement a redirect for any edite ...

Utilize select2 for dynamically loading an external html component

When the page is loaded, it includes another HTML page with a select element that I want to style using select2. The basic page structure looks like this: <select class="selectAddItem" id="selectAddItem" name="selectAddItem" style="width: 150px;" clas ...

Is there a way to extract a single element from an Array list?

Currently, I am working on a program where I need to sort an array list containing items, the item number, total units in stock, and the price. While I have managed to accomplish this task successfully, I am facing difficulty in finding a way to calculate ...

The imported package in Node.js cannot be located

I'm encountering an issue when trying to deploy my project on the server. Everything runs smoothly on my PC with no import problems. Thank you for your assistance! Error Message: Error [ERR_MODULE_NOT_FOUND]: Module '/home/igor/backend/alina_edu ...

The progress bar in Java Script is static and cannot be customized to change colors

Trying to use HTML for image uploads and I've created Java code to monitor the progress of the upload. However, I'm facing an issue where I cannot change the color of the progress loading bar. Below is the code I am currently using for uploading ...

Filter the ng-repeat in Angular based on the model's value

Within my "Saving" model, there is a field called "Retailer". I want to implement an ng-repeat directive that displays only items with the same "Retailer" value. Essentially, I am attempting to rectify this issue. <div ng-repeat="saving in savings | ...

Designing a personalized user template for a feature in Angular 2

My component currently has a default template: import {Component} from 'angular2/core'; @Component({ selector: 'my-component', template: ` <div class="container"> ...

What could be causing the absence of ReactDOM in my hello world application?

I have recently started learning Reactjs and I'm attempting to run a hello world program in the browser. However, I encountered an error which reads: react-dom.min.js:12 Uncaught TypeError: Cannot read property '__SECRET_DOM_DO_NOT_USE_OR_YOU_ ...

How can we transfer parameters in JavaScript?

My vision may be a bit vague, but I'll try to explain it as best as I can. I want to implement multiple buttons that can toggle the visibility of a div (I have this functionality working already). Each button should carry two values (a number and a l ...

The attempt to establish a WebSocket connection to 'wss://******/socket.io/?EIO=4&transport=websocket&sid=T2Sf_4oNIisxKLwsAAAK' was unsuccessful

I'm experiencing an issue while setting up a WebSocket connection using socket.io. When I attempt to log in, the following error message is displayed: WebSocket connection to 'wss://******/socket.io/?EIO=4&transport=websocket&sid=T2Sf_4oN ...

Checkmate with React Native's Checkbox Component

I have implemented the React Native Elements CheckBox inside List Items within a Flat List. import React, { Component } from "react"; import { View, Text, StyleSheet, FlatList } from "react-native"; import axios from 'axios&apo ...