js函數中寫默認值的幾種方式(常見的)


<script>
<!--第一種寫法,我更喜歡第一種寫法直觀一些-->
function Person(name){
this.name = name || '默認名字喬丹';
}
var person = new Person('詹姆斯01');//this-->person
console.log(person.name,'看啥名字')//詹姆斯01,如果不傳遞參數或者傳遞的參數為假(比如'',null)---就是默認的喬丹
<!--第2種寫法-->
function Person1(name){
console.log(arguments,'我是arguments')
this.name = arguments[0] ? arguments[0] : '默認的名字02'
}
console.log(new Person1(''));

// 區別就是里面一個用|| 一個用三元,這里又可以了解一個只是點了 arguments
//第三種方法,這種方法適合用於參數較多的情況,使用了Jquery的擴展:這個我就不寫了 很少用到jq了

 




</script>
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Functions/arguments 鏈接Arguments的

arguments 是一個對應於傳遞給函數的參數的類數組對象。
arguments對象是所有(非箭頭)函數中都可用的局部變量。你可以使用arguments對象在函數中引用函數的參數。
arguments對象不是一個 Array 。它類似於Array,但除了length屬性和索引元素之外沒有任何Array屬性
但是它可以被轉換為一個真正的Array

 

您還可以使用Array.from()方法或擴展運算符將參數轉換為真實數組:

Array.from專程數組
console.log(Array.from(arguments),'我是arguments對象,專程數組')
console.log([...arguments],'我是arguments對象,專程數組')

總結一下 arguments的三點用法:
@1 一、實現重載(類似循環)

二、同數組下標訪問實參(這個比較常規)

三、屬性callee指向自己(沒怎么用過或者見過)

callee就是它的方法,這個方法用的不多,很容易被我們忽略,它指向的是正在被執行的Function對象,最常用的例子就是用來做遞歸了。




 



免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM