特斯拉神秘新車型:Model Y或將今年3月發佈

據外媒報導,特斯拉將會在今年3月的發佈會上同時展示至少兩款不同款式的新汽車。其中,原定計劃的Model 3將是標準款轎車,而另一款神秘汽車則會是運動型SUV系列。

特斯拉首席技術官JB Straubel事實上早在去年6月就展示了一款由Model 3系列演變出的運動型SUV。隨後在10月,CEO伊隆•馬斯克(Elon Musk)也通過Twitter表示,Model 3的衍生型號將會被稱為Model Y。然而對於透露這樣一則資訊,馬斯克很快表示反悔,並迅速刪除了相關推文。

截至目前,有關特斯拉神秘新型號汽車的消息十分有限,尤其是該款車型是否也會隨Model 3同一時間上市。如果Model Y真的是Model 3的衍生版本,那前者極有可能與後者採用同樣底盤,並共用大部分生產線。

Model 3的預設售價為3.5萬美元,一次充電後的有效里程為200英里(約合320公里)。

本站聲明:網站內容來源於EnergyTrend https://www.energytrend.com.tw/ev/,如有侵權,請聯繫我們,我們將及時處理

【其他文章推薦】

※為什麼 USB CONNECTOR 是電子產業重要的元件?

網頁設計一頭霧水??該從何著手呢? 找到專業技術的網頁設計公司,幫您輕鬆架站!

※想要讓你的商品成為最夯、最多人討論的話題?網頁設計公司讓你強力曝光

※想知道最厲害的台北網頁設計公司推薦台中網頁設計公司推薦專業設計師”嚨底家”!!

電動車五日環台之旅,充電設備是最大考驗

由台灣電動車經銷、維修商綠動未來所主辦的第一屆電動車環台Party活動,歷經五日純電動行程,於2月1日順利抵台北101大樓。雖然台灣各地的充電設備分布不均,但這次活動仍證明電動車環島的可行性,主辦單位希望能藉此鼓勵更多民眾加入電動車行列。

綠動未來創辦人劉小麟表示,參加本次環島活動的車款分別是Tesla Model S、Luxgen M7 EV+ 以及Nissan Leaf 輕巧通勤車,皆為純電動車,且Luxgen、Nissan的車款都是都市用車,充飽電後的續航力只有150公里,在環島過程中也因此面臨較大的充電考驗。而Tesla Model S 每次充飽電可行駛480公里,影響相對輕微。

台灣各地充電設備空間分布不均。劉小麟紀錄環台過程的充電狀況,統計台灣東部的宜蘭、花蓮、台東三縣市均無充電設備,西部的新竹、苗栗、雲林、嘉義、高雄、屏東則沒有公共充電站。環台期間,須商借個人充電站協助充電,或者到汽車廠、警察局與消防隊,甚至在投宿的民宿充電。不過,用一般電源充電所需時間長,也因此限制電動車環島之旅的機動性;相較之下,專為電動車設計的快充充電站僅需幾十分鐘就能充飽電池再上路。

在成功完成純電環島之旅後,劉小麟也規劃開始募款,希望能帶著國產的Luxgen M7 EV 到西班牙參加六月即將展開的世界電動車環球賽,挑戰80天、20國、25,000公里的長征之旅。

(照片來源:臉書專頁)

本站聲明:網站內容來源於EnergyTrend https://www.energytrend.com.tw/ev/,如有侵權,請聯繫我們,我們將及時處理

【其他文章推薦】

※如何讓商品強力曝光呢? 網頁設計公司幫您建置最吸引人的網站,提高曝光率!!

網頁設計一頭霧水??該從何著手呢? 找到專業技術的網頁設計公司,幫您輕鬆架站!

※想知道最厲害的台北網頁設計公司推薦台中網頁設計公司推薦專業設計師”嚨底家”!!

Vue躬行記(8)——Vue Router

  雖然Vue.js未提供路由功能,但是官方推出了Vue Router(即vue-router庫),以插件的形式支持。它與Vue.js深度集成,可快速的創建單頁應用(Single Page Application,SPA)。

一、基本用法

  首先需要引入vue和vue-router兩個庫,如果像下面這樣全局引用(即存在全局變量Vue),那麼vue-router會自動調用Vue.use()方法註冊其自身;但如果以模塊的方式引用,那麼就得顯式地調用Vue.use()。

<script src="js/vue.js"></script>
<script src="js/vue-router.js"></script>

  然後添加兩個內置的組件,第一個是導航用的router-link組件,它默認會被渲染成<a>元素,如果要渲染成其它元素,那麼可以使用它的tag屬性;第二個是路徑匹配時用於渲染視圖的router-view組件,它還是一個函數式組件,如下所示。

<div id="container">
  <router-link to="/main">首頁</router-link>
  <router-link to="/list">列表</router-link>
  <router-view></router-view>
</div>

  再聲明要渲染的組件,這些組件會與指定的路由映射,下面是兩個非常簡單的自定義組件。

const Main = { template: '<div>首頁</div>' };
const List = { template: '<div>列表</div>' };

  接着定義路由配置,添加一組路徑以及對應的組件,如下所示。

const routes = [
  { path: '/main', component: Main },
  { path: '/list', component: List }
];

  最後創建路由器實例,並將之前的路由配置傳遞進來,在掛載根實例時,需要將它注入,從而讓整個應用都有路由功能,如下所示。

const router = new VueRouter({
  routes: routes
});
var vm = new Vue({
  el: "#container",
  router: router
});

  注意,router實例包含三個導航方法:push()、replace()和go(),可以用編程的方式進行導航。

  頁面在渲染完成后,得到的DOM結構如下所示,此時router-view組件所佔的位置無任何內容。

<div id="container">
  <a href="#/main" class="">首頁</a>
  <a href="#/list" class="">列表</a>
</div>

  當router-link組件所對應的路由匹配成功時,其渲染出的元素會被自動添加一個CSS類:router-link-active。例如點擊首頁鏈接,得到的結構如下所示,注意,此時router-view組件被替換成了Main組件中的內容。

<div id="container">
  <a href="#/main" class="router-link-active">首頁</a>
  <a href="#/list" class="">列表</a>
  <div>首頁</div>
</div>

二、路由模式

  Vue Router默認採用URL hash模式來保持頁面和URL的同步,其創建的URL格式需要包含井號(#),如下所示。

http://pwstrick.com/#/main

  Vue Router還有另外一種history模式,利用HTML5 History來保持頁面和URL的同步,其創建的URL格式在視覺上更為簡潔清晰,如下所示。

http://pwstrick.com/main

  如果要開啟history模式,那麼需要在路由配置時添加mode選項,並賦予history關鍵字,如下所示(直接修改了上一節中的示例)。

const router = new VueRouter({
  mode: "history",
  routes: routes
});

  注意,當直接訪問history模式創建的URL時,會返回一個404頁面。為了避免這種情況的發生,建議在服務器上配置一個默認的候選頁面。

三、路由

  本節不僅會介紹動態路由的概念,還會分析路由的命名和嵌套等操作。

1)動態路由

  Vue Router採用的路徑匹配引擎是path-to-regexp,它支持動態路由的匹配,例如有一個List組件,需要根據路徑中的頁碼參數把組件渲染成不同的內容,可以像下面這樣配置。

const List = { template: '<div>{{$route.params.page}}</div>' };
const routes = [
  { path: '/list/:page', component: List }
];

  在路由配置中,以冒號開頭的:page是路徑參數,它的值會被保存到路由對象$route的params屬性中。路由對象不僅包含解析URL得到的信息(例如路徑、查詢字符串、錨點等),還有匹配到的路由信息(例如路由名稱、路由記錄等)。當路徑是/list/1時,$route.params的值為{page: 1},params是一個對象,其鍵值與路徑參數對應。注意,一條路徑可以包含多個不同的路徑參數。

  當一個路徑能匹配多個路由時,匹配優先級會按照路由的定義順序來排,即先定義的,優先級高。下面的配置包含兩個路由,當路徑是/list/1時,只會渲染List組件。

const routes = [
  { path: '/list/:page', component: List },
  { path: '/list/1', component: Main }
];

2)命名路由

  可以在配置時為路由標識一個名稱,從而就能在使用時省略路徑了,如下所示,name屬性的值就是路由名稱。

const routes = [
  { path: '/list/:page', component: List, name: "list" }
];

  如果要導航到一個命名路由,那麼需要動態地綁定to屬性,併為其傳入路由的名稱以及可選的URL參數,如下所示。

<router-link :to="{ name: 'list', params: {page: 3} }">第三頁</router-link>

3)嵌套路由

  Vue Router允許嵌套路由,可通過多層嵌套的組件實現。下面是一個使用示例,首先在一個組件中聲明router-view視圖組件,如下所示。

const List = { template: '<router-view></router-view>' };
const Detail = { template: '<div>詳情</div>' };

  然後在路由配置中,添加children選項,並定義子路由。

const routes = [
  {
    path: "/list",
    component: List,
    children: [{ path: "detail", component: Detail }]
  }
];

  在經過這一系列操作后,當路徑是/list/detail時,Detail組件就會被渲染到List組件的視圖中。

  嵌套路由可用來渲染多個不同層級的視圖,而利用命名視圖可渲染多個同級的視圖。在下面的代碼中,為第二個router-view組件添加了name屬性,賦予它一個名稱,而第一個router-view組件的默認名稱為default。

<router-view></router-view>
<router-view name="detail"></router-view>

  在路由配置時,新增用於記錄各個命名組件的components選項,如下所示。

const routes = [
  {
    path: "/named",
    components: {
      default: Main,
      detail: Detail
    }
  }
];

  當路徑是/named時,Main和Detail兩個組件會被同時渲染。

四、重定向和別名

1)重定向

  在路由配置中,通過redirect選項可重定向到一個新的頁面,該選項可取的值有三種,分別是路徑、命名路由和回調函數,如下所示,其中函數中的to參數表示目標路由對象。

const routes = [
  { path: "/list/1", redirect: "/main" },
  { path: "/list/1", redirect: {name: "main"} },
  { path: "/list/1", redirect: to => "/main" }
];

  當訪問的路徑是/list/1時,瀏覽器的地址欄會變成/main,匹配的將是路徑為/main的路由。

2)別名

  在路由配置中,通過alias選項可定義路由的別名,如下所示。

const routes = [
  { path: "/list/4", component: Detail, alias: "/detail" }
];

  當訪問的路徑是/main時,瀏覽器的地址欄保持為/main,但匹配的將是路徑為/list/4的路由。

五、組件傳參

  除了在組件中通過$route.params獲取路由參數之外,還能將路由參數作為組件的props傳入,從而將組件和路由解耦,如下所示。

const List = {
  props: ["page"],
  template: "<div>{{page}}</div>"
};
const routes = [
  { path: "/list/:page", component: List, props: true }
];

  需要注意的是,在路由配置時要添加props選項,並賦予true后,才會讓路由參數和props關聯。

六、導航守衛

  導航守衛就是路由發生變化時的鈎子函數,Vue Router提供了三類守衛:全局、路由獨享和組件級。

1)全局守衛

  在路由器實例上可註冊三個全局守衛,分別是beforeEach()、beforeResolve()和afterEach()。

  beforeEach()是一個全局前置守衛,包含三個參數(如下所示),其中to是目標路由對象、from是來源路由對象,next是一個回調函數,用於解析(resolve)當前守衛。

router.beforeEach((to, from, next) => {
  next();
});

  由於導航在所有守衛解析之前會處於等待狀態(即不會改變路徑,也不會渲染對應的組件),因此在回調中不能省略next()函數。注意,該函數不僅能處理導航,還能將其中斷或重定向,甚至註冊一個錯誤。

  beforeResolve()是一個全局解析守衛,其參數和beforeEach()的相同,在導航被確認前,並且組件內的守衛和異步路由組件被解析之後調用。afterEach()是一個全局後置守衛,它只有to和from兩個參數。

2)路由守衛

  在路由配置中可直接定義beforeEnter()守衛,作用於某個單獨的路由而非全局,其參數和beforeEach()的相同,如下所示。

const routes = [
  {
    path: "/list",
    component: List,
    beforeEnter: (to, from, next) => {
      next();
    }
  }
];

3)組件守衛

  組件內的導航守衛包含三個,如下所列,它們的參數都和beforeEach()的相同,也是to、from和next。

  (1)beforeRouteEnter():由於該組件在導航確認前被調用,因此組件還未被創建,從而訪問this無法得到組件實例。但next()函數能接收一個參數為組件實例的回調,如下所示。

const List = {
  beforeRouteEnter: function(to, from, next) {
    next(vm => { 
      //vm是組件實例
    });
  }
};

  (2)beforeRouteUpdate():可通過this得到組件實例,當路由發生變化,但復用了一個組件時,會調用該守衛。例如一個路徑為/list/:page的路由(如下配置所示),在將/list/1導航至list/2時,由於渲染的都是List組件,因此會調用beforeRouteUpdate()守衛。

const routes = [
  {
    path: "/list/:page",
    component: List
  }
];

  (3)beforeRouteLeave():也可通過this得到組件實例,當路由改變,並且渲染的組件不同時,會調用該守衛。例如有兩條路徑/main和/list,分別對應Main和List組件,在List組件中聲明了beforeRouteLeave()守衛(如下所示),當從/list導航至/main時,會彈出確認框,判斷是否需要取消本次導航。

const List = {
  beforeRouteLeave: function(to, from, next) {
    const answer = window.confirm("是否離開當前頁?");
    answer ? next() : next(false);
  }
};

4)解析流程

  完整的導航解析流程如下所列。

(1)導航被觸發。

(2)在失活的組件里調用beforeRouteLeave()守衛。

(3)調用全局的beforeEach()守衛。

(4)在重用的組件里調用beforeRouteUpdate()守衛。

(5)在路由配置里調用beforeEnter()守衛。

(6)解析異步路由組件。

(7)在被激活的組件里調用beforeRouteEnter()守衛。

(8)調用全局的beforeResolve()守衛。

(9)導航被確認。

(10)調用全局的afterEach()守衛。

(11)觸發DOM更新。

(12)用創建好的實例調用beforeRouteEnter()守衛中傳給next參數的回調函數。

 

本站聲明:網站內容來源於博客園,如有侵權,請聯繫我們,我們將及時處理

【其他文章推薦】

※為什麼 USB CONNECTOR 是電子產業重要的元件?

網頁設計一頭霧水??該從何著手呢? 找到專業技術的網頁設計公司,幫您輕鬆架站!

※想要讓你的商品成為最夯、最多人討論的話題?網頁設計公司讓你強力曝光

※想知道最厲害的台北網頁設計公司推薦台中網頁設計公司推薦專業設計師”嚨底家”!!

什麼情況用ArrayList or LinkedList呢?

ArrayList 和 LinkedList 是 Java 集合框架中用來存儲對象引用列表的兩個類。ArrayList 和 LinkedList 都實現 List 接口。先對List做一個簡單的了解:

列表(list)是元素的有序集合,也稱為序列。它提供了基於元素位置的操作,有助於快速訪問、添加和刪除列表中特定索引位置的元素。List 接口實現了 Collection 和 Iterable 作為父接口。它允許存儲重複值和空值,支持通過索引訪問元素。

 

讀完這篇文章要搞清楚的問題:ArrayList和LinkedList有什麼不同之處?什麼時候應該用ArrayList什麼時候又該用LinkedList呢?

 

下面以增加和刪除元素為例比較ArrayList和LinkedList的不同之處

增加元素到列表尾端:

在ArrayList中增加元素到隊列尾端的代碼如下:

public boolean add(E e){
   ensureCapacity(size+1);//確保內部數組有足夠的空間
   elementData[size++]=e;//將元素加入到數組的末尾,完成添加
   return true;      
} 

 

ArrayList中add()方法的性能決定於ensureCapacity()方法。ensureCapacity()的實現如下:

public vod ensureCapacity(int minCapacity){
  modCount++;
  int oldCapacity=elementData.length;
  if(minCapacity>oldCapacity){    //如果數組容量不足,進行擴容
      Object[] oldData=elementData;
      int newCapacity=(oldCapacity*3)/2+1;  //擴容到原始容量的1.5倍
      if(newCapacitty<minCapacity)   //如果新容量小於最小需要的容量,則使用最小
                                                    //需要的容量大小
         newCapacity=minCapacity ;  //進行擴容的數組複製
         elementData=Arrays.copyof(elementData,newCapacity);
  }
}

 

可以看到,只要ArrayList的當前容量足夠大,add()操作的效率非常高的。只有當ArrayList對容量的需求超出當前數組大小時,才需要進行擴容。擴容的過程中,會進行大量的數組複製操作。而數組複製時,最終將調用System.arraycopy()方法,因此add()操作的效率還是相當高的。

LinkedList 的add()操作實現如下,它也將任意元素增加到隊列的尾端:

public boolean add(E e){
   addBefore(e,header);//將元素增加到header的前面
   return true;
}

 

其中addBefore()的方法實現如下:

private Entry<E> addBefore(E e,Entry<E> entry){
     Entry<E> newEntry = new Entry<E>(e,entry,entry.previous);
     newEntry.provious.next=newEntry;
     newEntry.next.previous=newEntry;
     size++;
     modCount++;
     return newEntry;
}

 

可見,LinkeList由於使用了鏈表的結構,因此不需要維護容量的大小。從這點上說,它比ArrayList有一定的性能優勢,然而,每次的元素增加都需要新建一個Entry對象,並進行更多的賦值操作。在頻繁的系統調用中,對性能會產生一定的影響。

增加元素到列表任意位置

除了提供元素到List的尾端,List接口還提供了在任意位置插入元素的方法:void add(int index,E element);

由於實現的不同,ArrayList和LinkedList在這個方法上存在一定的性能差異,由於ArrayList是基於數組實現的,而數組是一塊連續的內存空間,如果在數組的任意位置插入元素,必然導致在該位置后的所有元素需要重新排列,因此,其效率相對會比較低。

以下代碼是ArrayList中的實現:

public void add(int index,E element){
   if(index>size||index<0)
      throw new IndexOutOfBoundsException(
        "Index:"+index+",size: "+size);
         ensureCapacity(size+1);
         System.arraycopy(elementData,index,elementData,index+1,size-index);
         elementData[index] = element;
         size++;
}

 

可以看到每次插入操作,都會進行一次數組複製。而這個操作在增加元素到List尾端的時候是不存在的,大量的數組重組操作會導致系統性能低下。並且插入元素在List中的位置越是靠前,數組重組的開銷也越大。

而LinkedList此時显示了優勢:

public void add(int index,E element){
   addBefore(element,(index==size?header:entry(index)));
}

 

可見,對LinkedList來說,在List的尾端插入數據與在任意位置插入數據是一樣的,不會因為插入的位置靠前而導致插入的方法性能降低。

刪除任意位置元素

對於元素的刪除,List接口提供了在任意位置刪除元素的方法:

public E remove(int index);

 

對ArrayList來說,remove()方法和add()方法是雷同的。在任意位置移除元素后,都要進行數組的重組。ArrayList的實現如下:

public E remove(int index){
   RangeCheck(index);
   modCount++;
   E oldValue=(E) elementData[index];
  int numMoved=size-index-1;
  if(numMoved>0)
     System.arraycopy(elementData,index+1,elementData,index,numMoved);
     elementData[--size]=null;
     return oldValue;
}

 

可以看到,在ArrayList的每一次有效的元素刪除操作后,都要進行數組的重組。並且刪除的位置越靠前,數組重組時的開銷越大。

public E remove(int index){
  return remove(entry(index));         
}
private Entry<E> entry(int index){
  if(index<0 || index>=size)
      throw new IndexOutBoundsException("Index:"+index+",size:"+size);
      Entry<E> e= header;
      if(index<(size>>1)){//要刪除的元素位於前半段
         for(int i=0;i<=index;i++)
             e=e.next;
     }else{
         for(int i=size;i>index;i--)
             e=e.previous;
     }
         return e;
}

 

在LinkedList的實現中,首先要通過循環找到要刪除的元素。如果要刪除的位置處於List的前半段,則從前往後找;若其位置處於後半段,則從后往前找。因此無論要刪除較為靠前或者靠後的元素都是非常高效的;但要移除List中間的元素卻幾乎要遍歷完半個List,在List擁有大量元素的情況下,效率很低。

容量參數

容量參數是ArrayList和Vector等基於數組的List的特有性能參數。它表示初始化的數組大小。當ArrayList所存儲的元素數量超過其已有大小時。它便會進行擴容,數組的擴容會導致整個數組進行一次內存複製。因此合理的數組大小有助於減少數組擴容的次數,從而提高系統性能。

public  ArrayList(){
  this(10);  
}
public ArrayList (int initialCapacity){
   super();
   if(initialCapacity<0)
       throw new IllegalArgumentException("Illegal Capacity:"+initialCapacity)
      this.elementData=new Object[initialCapacity];
}

 

ArrayList提供了一個可以制定初始數組大小的構造函數:

public ArrayList(int initialCapacity) 

 

現以構造一個擁有100萬元素的List為例,當使用默認初始化大小時,其消耗的相對時間為125ms左右,當直接制定數組大小為100萬時,構造相同的ArrayList僅相對耗時16ms。

遍歷列表

遍歷列表操作是最常用的列表操作之一,在JDK1.5之後,至少有3中常用的列表遍歷方式:

 

  • forEach操作

  • 迭代器

  • for循環。

 

String tmp;
long start=System.currentTimeMills();    //ForEach 
for(String s:list){
    tmp=s;
}
System.out.println("foreach spend:"+(System.currentTimeMills()-start));
start = System.currentTimeMills();
for(Iterator<String> it=list.iterator();it.hasNext();){    
   tmp=it.next();
}
System.out.println("Iterator spend;"+(System.currentTimeMills()-start));
start=System.currentTimeMills();
int size=;list.size();
for(int i=0;i<size;i++){                     
    tmp=list.get(i);
}
System.out.println("for spend;"+(System.currentTimeMills()-start));

 

構造一個擁有100萬數據的ArrayList和等價的LinkedList,使用以上代碼進行測試,測試結果:

可以看到,最簡便的ForEach循環並沒有很好的性能表現,綜合性能不如普通的迭代器,而是用for循環通過隨機訪問遍歷列表時,ArrayList表項很好,但是LinkedList的表現卻無法讓人接受,甚至沒有辦法等待程序的結束。這是因為對LinkedList進行隨機訪問時,總會進行一次列表的遍歷操作。性能非常差,應避免使用。

總結

ArrayList和LinkedList在性能上各有優缺點,都有各自所適用的地方,總的說來可以描述如下:

 

1.對ArrayList和LinkedList而言,在列表末尾增加一個元素所花的開銷都是固定的。

 

對ArrayList而言,主要是在內部數組中增加一項,指向所添加的元素,偶爾可能會導致對數組重新進行分配;

 

而對LinkedList而言,這個開銷是統一的,分配一個內部Entry對象。

2.在ArrayList的中間插入或刪除一個元素意味着這個列表中剩餘的元素都會被移動;而在LinkedList的中間插入或刪除一個元素的開銷是固定的。

3.LinkedList不支持高效的隨機元素訪問。

4.ArrayList的空間浪費主要體現在在list列表的結尾預留一定的容量空間,而LinkedList的空間花費則體現在它的每一個元素都需要消耗相當的空間

 

可以這樣說:當操作是在一列數據的後面添加數據而不是在前面或中間,並且需要隨機地訪問其中的元素時,使用ArrayList會有更好的性能;當操作是在一列數據的前面或中間添加或刪除數據,並且按照順序訪問其中的元素時,就應該使用LinkedList了。

本站聲明:網站內容來源於博客園,如有侵權,請聯繫我們,我們將及時處理

【其他文章推薦】

※如何讓商品強力曝光呢? 網頁設計公司幫您建置最吸引人的網站,提高曝光率!!

網頁設計一頭霧水??該從何著手呢? 找到專業技術的網頁設計公司,幫您輕鬆架站!

※想知道最厲害的台北網頁設計公司推薦台中網頁設計公司推薦專業設計師”嚨底家”!!

中國財政部2月1日起檢查新能源汽車騙補

中國財政部2月1日召開新能源汽車推廣應用補助資金專項檢查佈置視訊會議,此舉標誌著財政部組織的新能源汽車推廣應用補助資金專項檢查正式開始。

這次檢查財政部將組織全國35個專員辦檢查北京、上海、江蘇等25個省市,覆蓋2013—2015年度獲得中央財政補助資金支援的全部90家新能源汽車生產企業,延伸部分購買使用新能源汽車的企事業單位以及地方政府相關部門。

此次檢查不僅針對中央財政補助資金,對省、市、縣三級提供的新能源補助資金也一併檢查,發現問題一併處理、一併追究責任。檢查工作2016年2月1日正式啟動,至3月下旬結束。

此次檢查以檢查「騙補」為重點,突出重點地區、重點企業、重點車型。檢查組要緊緊圍繞新能源汽車生產、銷售、運營各個環節,逐一排查有無造假騙補的問題。

此外,財政部去年已明確,2017年至2018年新能源汽車補貼標準,將在2016年基礎上下調20%,2019年至2020年下降40%,2020年以後補貼政策將退出。

本站聲明:網站內容來源於EnergyTrend https://www.energytrend.com.tw/ev/,如有侵權,請聯繫我們,我們將及時處理

【其他文章推薦】

※為什麼 USB CONNECTOR 是電子產業重要的元件?

網頁設計一頭霧水??該從何著手呢? 找到專業技術的網頁設計公司,幫您輕鬆架站!

※想要讓你的商品成為最夯、最多人討論的話題?網頁設計公司讓你強力曝光

※想知道最厲害的台北網頁設計公司推薦台中網頁設計公司推薦專業設計師”嚨底家”!!

※專營大陸快遞台灣服務

台灣快遞大陸的貨運公司有哪些呢?

東南亞穿山甲走私猖獗 20年近90萬隻受害

摘錄自2020年2月20日中央社報導

國際瀕臨絕種野生動植物貿易調查委員會(TRAFFIC)今(20日)表示,過去20年間,據信有近90萬隻穿山甲在東南亞各地遭非法販運,凸顯各界處理非法交易問題時面臨的挑戰。

法新社報導,穿山甲是全世界非法販運量最大的哺乳動物。針對穿山甲身體部位的走私猖獗,因這些部位在中國和越南等國家具高度傳統藥用價值。此外,穿山甲肉被視為美味佳餚。多年來在生物多樣豐富的東南亞地區被嚴重盜獵,而在非洲也逐漸成為盜獵目標。

TRAFFIC在新發布的報告中估計,2000年至2019年間,約有89萬5000隻穿山甲在東南亞遭到走私。報告也提到,單在2017年至2019年間,馬來西亞、新加坡和越南就查獲超過9萬6000公斤的穿山甲鱗片。

本站聲明:網站內容來源環境資訊中心https://e-info.org.tw/,如有侵權,請聯繫我們,我們將及時處理

【其他文章推薦】

※為什麼 USB CONNECTOR 是電子產業重要的元件?

網頁設計一頭霧水??該從何著手呢? 找到專業技術的網頁設計公司,幫您輕鬆架站!

※想要讓你的商品成為最夯、最多人討論的話題?網頁設計公司讓你強力曝光

※想知道最厲害的台北網頁設計公司推薦台中網頁設計公司推薦專業設計師”嚨底家”!!

※專營大陸快遞台灣服務

台灣快遞大陸的貨運公司有哪些呢?

南非手工木造衝浪板 友善環境新選擇

摘錄自2020年2月21日公視新聞網報導

南非業者派翠克以純手工製做每一張木製衝浪板,原料來自南非東岸永續生長的日本柳杉,工匠必須將中間的部分挖空,以減輕衝浪板的重量。這項技術到了1950年代,隨著新式衝浪板興起而逐漸沒落。

比起傳統的聚氨酯發泡材做成的衝浪板,派翠克仍不敢稱他的木製衝浪板「環保」,不過至少是朝對的方向前進。派翠克說:「不管製做出什麼,你的產出都會產生足跡,永遠都會對環境造成不良影響,最好對這點保持誠實。像我會說,我使用聚氨酯木工膠,這絕對對環境不好。我也想找到替代方案,但此時此刻沒有辦法。」

10年來,派翠克製做出850張木製衝浪板,每一張都不完全相同。和大規模生產的現代衝浪板比起來也許微不足道,但對某些衝浪客來說,這張衝浪板絕對是獨一無二。

本站聲明:網站內容來源環境資訊中心https://e-info.org.tw/,如有侵權,請聯繫我們,我們將及時處理

【其他文章推薦】

※如何讓商品強力曝光呢? 網頁設計公司幫您建置最吸引人的網站,提高曝光率!!

網頁設計一頭霧水??該從何著手呢? 找到專業技術的網頁設計公司,幫您輕鬆架站!

※想知道最厲害的台北網頁設計公司推薦台中網頁設計公司推薦專業設計師”嚨底家”!!

大陸寄台灣空運注意事項

大陸海運台灣交貨時間多久?

特斯拉 造完電動汽車造電動飛機

近日,特斯拉CEO馬斯克公開表示對電動飛機頗有興趣,馬斯克所說的電動飛機為電動垂直起降噴氣式飛機,可以垂直起飛和降落。電動飛機的安全性還有待驗證,你會支持特斯拉打造電動飛機嗎?又或者這僅僅是博取大眾眼球的一種方式?

馬斯克在德州A&M大學稱,「那只是別人的想法。當我創立SpaceX時,他們認為我瘋了。我的一位朋友編輯了一段很長的視頻,裡面全是火箭墜毀的場景,他讓我好好看看。還有一些朋友曾經涉足過火箭創業公司的工作,他們認為我的想法太糟糕了,不管怎樣,我還是認為我們有一點點成功的機會的。」

馬斯克稱:「我們離成功非常近了,要知道SpaceX才發射4次火箭。我認為,最終我們完全有希望開發出實用的產品讓大家信服。」

本站聲明:網站內容來源於EnergyTrend https://www.energytrend.com.tw/ev/,如有侵權,請聯繫我們,我們將及時處理

【其他文章推薦】

※為什麼 USB CONNECTOR 是電子產業重要的元件?

網頁設計一頭霧水??該從何著手呢? 找到專業技術的網頁設計公司,幫您輕鬆架站!

※想要讓你的商品成為最夯、最多人討論的話題?網頁設計公司讓你強力曝光

※想知道最厲害的台北網頁設計公司推薦台中網頁設計公司推薦專業設計師”嚨底家”!!

※專營大陸快遞台灣服務

台灣快遞大陸的貨運公司有哪些呢?

寶馬iPerformance插電式混合動力車將於七月推出

寶馬早就有進軍插電式混合動力汽車市場的計畫,2009年,寶馬正式宣佈了市場開發計畫,之後推出了MINI E、Active E等純電力驅動車型,以及i3、i8等插電式混合動力驅動車型。雖然我們很想知道寶馬插電式混合動力系列車型的具體資訊,但目前寶馬系電動車具體資訊還是很有限的。

新推出的iPerformance插電式混合動力車系統將沿用寶馬旗下的主流車型,同樣使用“i”系如i3、i8車型的插電式混合動力技術 ,該系統包括電動機、電池組以及電子控制系統等,第一款載入“i”系技術的插電式混合動力版新一代寶馬7系車BMW 740e iPerformance將於2016年7月正式推出。

本站聲明:網站內容來源於EnergyTrend https://www.energytrend.com.tw/ev/,如有侵權,請聯繫我們,我們將及時處理

【其他文章推薦】

※如何讓商品強力曝光呢? 網頁設計公司幫您建置最吸引人的網站,提高曝光率!!

網頁設計一頭霧水??該從何著手呢? 找到專業技術的網頁設計公司,幫您輕鬆架站!

※想知道最厲害的台北網頁設計公司推薦台中網頁設計公司推薦專業設計師”嚨底家”!!

大陸寄台灣空運注意事項

大陸海運台灣交貨時間多久?

買不起電動車特斯拉?只要你坐的下,或許可以嘗試 Tesla Model S 兒童版

當小孩時通常非常幸福,不僅不用工作,也不用面對大環境的現實面,專心念書與玩就好,身材嬌小雖有好有壞,但坐在電動模型車中卻是剛剛好。如果買不起特斯拉(Tesla)電動車,卻又是它的頭號愛好者,這款最新的 Tesla Model S for Kids(Tesla Model S 兒童版)將會是你最好的選擇,但這款電動車只限孩童使用。

不到幾天前,一家名叫 Actev Motors 的廠商才推出了小孩專用的卡丁車 Arrow,一台預售價為 599 元美金,時速最高可達每小時 12 哩,讓許多大人恨不得再重回孩童時期,身形縮小才好塞進這台酷炫的卡丁車。電動車大廠特斯拉也不落人後,與美國童車製造商 Radio Flyer 合作打造迷你版的 Model S,讓許多電動車的愛好者趨之若鶩。

▲ Actev Motors 推出的卡丁車 Arrow。(Source:)   這款 Model S for Kids 的電動童車有建議的乘客年齡,僅能讓 3 至 8 歲的孩童乘坐,但如果你塞的下這小小的座位,又不怕它壞掉,也是不會有人禁止你乘坐。速度最高能達每小時 6 哩,透過設定能將速度降低至每小時 3 哩,顧及孩童乘坐時的安全。此外,充飽電的時間僅需三個小時,與真的 Model S 不同的是,這台迷你版 Model S for Kids 能更換電池,增加充電的便利性。

▲ Tesla Model S for Kids 的介紹影片。(Source:)   除了大小不同外,它也擁有鳴汽笛、按喇叭等車子的功能,更提供了客製化的服務。車前也裝有能用的頭燈與前行李箱,讓孩子載上想攜帶的玩具,也可以透過 AUX 接口連接輸入音樂,讓小孩開起來更加順心。貼心的是,這款 Model S for Kids 的車殼顏色完全仿造真實的 Model S 所打造,擁有金屬深藍、午夜金屬銀、和複層紅三種顏色,更貼近喜愛特斯拉的粉絲的心。   然而,與卡丁車 Arrow 相較之下,Model S for Kids 卻顯得較為遜色。Arrow 的速度不僅比 Model S for Kids 快上一倍,其造型又更加亮眼,還有許多安全措施像是防止撞毀、地理圍欄(Geofencing)的特色,讓孩童能更加安全的行駛在路上。此外,Model S for Kids 的 500 元美金售價也沒有比 599 美金便宜很多,想必若非是特斯拉的頭號粉絲,也會選擇 Arrow 購買吧。

(首圖來源:)   (本文授權轉載自《》─〈〉)

本站聲明:網站內容來源於EnergyTrend https://www.energytrend.com.tw/ev/,如有侵權,請聯繫我們,我們將及時處理

【其他文章推薦】

※為什麼 USB CONNECTOR 是電子產業重要的元件?

網頁設計一頭霧水??該從何著手呢? 找到專業技術的網頁設計公司,幫您輕鬆架站!

※想要讓你的商品成為最夯、最多人討論的話題?網頁設計公司讓你強力曝光

※想知道最厲害的台北網頁設計公司推薦台中網頁設計公司推薦專業設計師”嚨底家”!!

※專營大陸快遞台灣服務

台灣快遞大陸的貨運公司有哪些呢?