Coder Social home page Coder Social logo

Comments (6)

g-plane avatar g-plane commented on May 20, 2024

I don't think [ 'wei', 'male', [ 15211111111, 13511111111 ], [ 'IBM', 'BJ' ] ] is consistent with Laravel.
For example (in Laravel 5.4):

$collect = collect([
    'name' => 'wei',
    'sex' => 'male',
    'phone' => [15211111111, 13511111111],
    'company' => ['name' => 'IBM', 'city' => 'BJ']
]);

return dd($collect->toArray());

The result is:
image

from collect.js.

ecrmnn avatar ecrmnn commented on May 20, 2024

It's not consistent with Laravel right now because in PHP have associative arrays, while JS don't.

I think it would be weird to return an object from a method called toArray(), but it would be consistent with Laravel.

What do you think? I'm open for a discussion

from collect.js.

solomonhawk avatar solomonhawk commented on May 20, 2024

It is my (random JS developer) opinion that the closest equivalent data structure in JS would be a nested array of [key, value] pairs. This is admittedly more awkward to work with than an object or real associative array. I wonder what the use case is for calling toArray() on an object wrapped in collect.

Input:

people = {
  name: 'wei',
  sex: 'male',
  phone: [15211111111, 13511111111],
  company: {
    name: 'IBM',
    city: 'BJ'
  }
}

Output:

[
  ['name', 'wei'],
  ['sex', 'male'],
  ['phone', [15211111111, 13511111111]],
  ['company', { name: 'IBM', city: 'BJ' }]
]

from collect.js.

wmj0cn avatar wmj0cn commented on May 20, 2024

dont see the usefulness of this method, would you like to give a real use scenario of it?

from collect.js.

faalotaiby avatar faalotaiby commented on May 20, 2024

In my opinion calling it ToArray is not useful, unless you needed an array, that says pass it to method which only accepted Integer() as a parameter.

from collect.js.

RaulWei avatar RaulWei commented on May 20, 2024

Sorry for that I'm not familiar with Laravel, I propose this problem standing at the general position.

from collect.js.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.