js通过两种方式进行对商品价格排序

javascript-illustration.png

js通过两种方式进行对商品价格排序

<template>
  <div class="content"></div>
</template>
<script>
export default {
  data() {
    return {
      user: {
        order_list: [
          { id: 1, title: "java", click: 300, price: 600 },
          { id: 2, title: "react", click: 240, price: 460 },
          { id: 3, title: "vue", click: 506, price: 820 },
          { id: 4, title: "c#", click: 157, price: 765 },
          { id: 5, title: "php", click: 650, price: 100 },
          { id: 6, title: "c语言", click: 80, price: 920 },
        ],
        //方式二
        userOrderSort() {
          this.order_list.reduce((pre, cur) => {
            return pre.price > cur.price ? 1 : -1;
          }, []);
        },
      },
    };
  },
  mounted() {
    this.orderSort();
    this.user.userOrderSort();
  },
  methods: {
    //方式一
    orderSort() {
      this.user.order_list.sort(order("price"));
    },
  },
};
// 封装排序方法
function order(filed, type = "asc") {
  return (a, b) => {
    if (type == "asc") return a[filed] > b[filed] ? 1 : -1;
    return a[filed] > b[filed] ? -1 : 1;
  };
}
</script>

<style lang="scss"></style>

打印出来的结果

[
  {
    "id": 5,
    "title": "php",
    "click": 650,
    "price": 100
  },
  {
    "id": 2,
    "title": "react",
    "click": 240,
    "price": 460
  },
  {
    "id": 1,
    "title": "java",
    "click": 300,
    "price": 600
  },
  {
    "id": 4,
    "title": "c#",
    "click": 157,
    "price": 765
  },
  {
    "id": 3,
    "title": "vue",
    "click": 506,
    "price": 820
  },
  {
    "id": 6,
    "title": "c语言",
    "click": 80,
    "price": 920
  }
]

后期还会带来更多知识点,喜欢的点赞关注来点糖

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容