javascript code একটি পরিবর্তনশীল থেকে একটি JS বস্তুর সম্পত্তি নাম সেট করতে কিভাবে




javascript function (5)

আমি গতিশীল একটি JS বস্তুর সম্পত্তি নাম সেট করতে প্রয়োজন।

for(i=1; i<3; i++) {
    var key  = i+'name';

    data = {
        key : 'name1',
    }
}

ফলাফল হওয়া উচিত:

data = {
    1name: 'name1'
    2name: 'name1'
}

Answer #1
jsonVariable = {}
for(i=1; i<3; i++) {        
   var jsonKey  = i+'name';
   jsonVariable[jsonKey] = 'name1'
}

এই অনুরূপ হবে

    jsonVariable = {
    1name : 'name1'
    2name : 'name1'
}

Answer #2

ECMAScript 6 দিয়ে, আপনি বস্তুর আক্ষরিক সিনট্যাক্স সহ পরিবর্তনশীল সম্পত্তি নামগুলি ব্যবহার করতে পারেন:

var keyName = 'myKey';
var obj = {
              [keyName]: 1
          };
obj.myKey;//1

এই সিনট্যাক্স নিম্নলিখিত নতুন ব্রাউজারে উপলব্ধ:

এজ 12+ (কোনও IE সমর্থন), FF34 +, Chrome 44+, অপেরা 31+, সাফারি 7.1+

( https://kangax.github.io/compat-table/es6/ )

আপনি transpiler হিসাবে একটি transpiler ব্যবহার করে পুরোনো ব্রাউজারে সমর্থন যোগ করতে পারেন। rollup বা webpack মত একটি মডিউল বান্ডলার ব্যবহার করা হলে এটি একটি সম্পূর্ণ প্রকল্পটিকে webpack


Answer #3

পরিবর্তনশীল আসে যেখানে এটা কোন ব্যাপার না। মূল জিনিসটি আমাদের আছে ... বর্গাকার বন্ধনীগুলির মধ্যে পরিবর্তনশীল নামটি সেট করুন "[..]"।

var optionName = 'nameA';
var JsonVar = {
[optionName] : 'some value'
}

Answer #4

আপনি গতিশীলভাবে কি সেট করতে [] নোটেশন ব্যবহার করতে হবে।

var jsonVariable = {};
for(i=1; i<3; i++) {        
 var jsonKey  = i+'name';
 jsonVariable[jsonKey] = 'name1';

}

এখন ES6 এ আপনি বস্তুগত অক্ষরগুলি গতিশীলভাবে তৈরি করতে বস্তুর আক্ষরিক সিনট্যাক্স ব্যবহার করতে পারেন, কেবল পরিবর্তনশীল মোড়ানো []

var key  = i + 'name';
data = {
    [key] : 'name1',
}

Answer #5
var jsonVariable = {};
for(var i=1; i < 3; i++) {
  jsonVariable[i + 'name'] = 'name' + i;        
}




javascript