首页 > 试题广场 >

Symbol

[编程题]Symbol
  • 热度指数:7293 时间限制:C/C++ 3秒,其他语言6秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
请补全JavaScript代码,要求以键/值对的对象形式返回参数数组。要求如下:
1. 键名的数据类型为Symbol
2. 键值为当前数组项
3. Symbol的描述为当前数组项
4. 返回普通对象
const _symbolKey = array => {
    // 补全代码
    let obj = {};
    array.map(item=>{
        let s = Symbol(item);
        obj[s] = item;
    })
    return obj;
}

发表于 2023-05-01 18:05:39 回复(0)
 const _symbolKey = array => {
                // 补全代码
                const obj={}
               var n= array.map((item,index)=>{
                       let   key =Symbol(`${item}`)
                           obj[key]=item
               })
               return  obj 
            }
发表于 2023-03-24 16:14:20 回复(0)
// 补全代码
return array.reduce((v,t,i) => {
    v[Symbol.for(t)] = t
    return v
}, {})

发表于 2022-12-04 10:05:31 回复(0)
const _symbolKey = array => {
                // 补全代码
            let obj = {};     
            for (const element of array.entries()) {
                console.log(element)
                let key = Symbol();
                key = element[0]
                obj[key] = element[1]
            }
            return obj;
                
            }
为啥不行啊

发表于 2022-11-11 21:14:06 回复(0)
const _symbolKey = array => {
    // 补全代码
    let obj = new Object();
    for(let i = 0,j = 1;i < array.length;i++,j++){
        obj[Symbol(j)] = array[i]
    }
    return obj;
}

感觉题目表述有问题

发表于 2022-08-18 21:36:20 回复(0)
<!DOCTYPE html>
<html>
    <head>
        <meta charset=utf-8>
    </head>
    <body>

        <script type="text/javascript">
            const _symbolKey = array => {
                // 补全代码
              return  array.reduce((acc,curr)=>{
                acc[Symbol(curr)]=curr
                return acc
              },{})

            }
        </script>
    </body>
</html>
发表于 2022-08-02 14:54:09 回复(0)
const _symbolKey = array => {
    let obj=[]
    array.forEach(item=>{
        obj[Symbol(item)]=item
    })
    return obj
}

发表于 2022-07-16 23:16:28 回复(0)
Symbol定义的对象属性不能使用for...in循环遍历
<!DOCTYPE html>
<html>
    <head>
        <meta charset=utf-8>
    </head>
    <body>
    	
        <script type="text/javascript">
            const _symbolKey = array => {
                // 补全代码
                let obj = {}
                array.forEach(item=>{
                    obj[Symbol(item)] = item
                })
                return obj
            }
        </script>
    </body>
</html>

发表于 2022-06-15 15:12:06 回复(0)
const _symbolKey = array => {
                // 补全代码
                var obj = {}
                array.forEach(function(item){
                    var symbol = Symbol(item)
                    obj[symbol] = item
                })
                return obj
            }
发表于 2022-05-23 19:39:45 回复(0)
<!DOCTYPE html>
<html>
    <head>
        <meta charset=utf-8>
    </head>
    <body>
    	
        <script type="text/javascript">
            const _symbolKey = array => {
                // 补全代码
                let obj = new Object();
                array.forEach(v=>{
                    obj[Symbol(v)]=v;
                })
                return obj;
            }
        </script>
    </body>
</html>

发表于 2022-03-28 13:25:54 回复(0)
<script type="text/javascript">
            const _symbolKey = array => {
                // 补全代码
                let obj = {}
                array.forEach(item => {
                    obj[Symbol(item)] = item
                })
                return obj
            }
        </script>
发表于 2022-01-30 16:53:18 回复(0)
const _symbolKey = array => {
    let obj = {}
    for (let i = 0; i < array.length; i++) {
        let key = Symbol(array[i])
        obj[key] = array[i]
    }
    return obj
}
let array = [123, 2]
console.log(_symbolKey(array)) //{ [Symbol(123)]: 123, [Symbol(2)]: 2 }
// 可以看到答案要求
let ans = function () {
    let o = _symbolKey([1, 2]);
    return Object.getOwnPropertySymbols(o)[0].toString() === 'Symbol(1)' && Object.getOwnPropertySymbols(o)[1].toString() === 'Symbol(2)'
}
console.log(ans())//true

发表于 2022-01-26 06:05:39 回复(0)
const _symbolKey = array => {
  // 补全代码
  let obj = {}
  array.map((value, index) => {
    index = Symbol(value)
    obj[index] = value
  })
  return obj
}
发表于 2022-01-12 10:15:30 回复(1)
<!DOCTYPE html>
<html>
    <head>
        <meta charset=utf-8>
    </head>
    <body>
    	
        <script type="text/javascript">
            const _symbolKey = array => {
                // 补全代码
                let commonObj = {}
                array.forEach((item) =>{
                    commonObj[Symbol(item)] = item;
                })
                return commonObj
            }
        </script>
    </body>
</html>

发表于 2021-12-23 15:32:49 回复(0)
<script type="text/javascript">
    const _symbolKey = array => {
        // 补全代码
        let obj = {}
        array.forEach((v,i) => {
            let name = Symbol(v);
            obj[name] = v;
        })
        return obj;
    }
</script>

发表于 2021-12-20 17:42:31 回复(0)
<script type="text/javascript">
    const _symbolKey = array => {
        // 补全代码
        let obj={}
        array.forEach(item=>{
            let key=Symbol(item)
            obj[key]=item
        })
        return obj
    }
</script>

发表于 2021-12-12 09:22:27 回复(0)
const _symbolKey = array => {
                // 补全代码
                let obj={};
                array.forEach(item=>{
                    obj[Symbol(item)]=item;
                })
                return obj;
            }

发表于 2021-12-04 17:46:39 回复(0)